首页 新闻 搜索 专区 学院

JavaScript

0
悬赏园豆:10 [已解决问题] 解决于 2017-03-10 09:48

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,请赐教。

飘飘城的主页 飘飘城 | 初学一级 | 园豆:69
提问于:2017-03-09 18:24
< >
分享
最佳答案
0

你那个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);

收获园豆:10
龙行天涯 | 小虾三级 |园豆:1821 | 2017-03-10 09:11

 灰常感谢!!!

飘飘城 | 园豆:69 (初学一级) | 2017-03-10 09:48
其他回答(2)
0

异步的没办法...

[3] | 园豆:1172 (小虾三级) | 2017-03-09 20:38
0

原来如此.....我说没这个方法啊...

大水煮鱼 | 园豆:366 (菜鸟二级) | 2017-03-10 10:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册