function checkLoginPassword(str){
var bn;
var data="";
requestPost("resetuserpwd?optType=selPropValue",data,function(msg){
bn = msg;
});
var re = new RegExp("^(?![^a-z]+$)(?!\\D+$)(?![^A-Z]+$).{"+bn+"}$");
if(re.test(str)){
return false;
} else {
return true;
}
}
这样得不到msg的值,打印bn都是空值。就是想把msg的值并赋值给bn,请赐教。
你那个requestPost方法应该是自己封装的一个Jquery ajax请求方法吧;在ajax方法有一个参数async,值是bool类型,默认不写是true,也就表示异步请求,设置为false表示同步请求,你的问题只需要把async这个参数值设置为false就可以了。
var bn = ''; $.ajax({ url: "/Test/GetString", type: "post", data: { Status: "ABC" }, async: false,//这个参数不写的时候表示当前请求为异步,false表示同步 success: function (msg) { bn = "我是ajax里给的值"; } }) alert(bn);
灰常感谢!!!
异步的没办法...
原来如此.....我说没这个方法啊...