• 解决ajax回调函数无返回值得问题


    这里以编辑验证角色名为例:

      首先,定义一个flag全局变量。

      然后,在回调函数resp()中根据判断将flag的值设为true或false。

      最后,在调用函数ckrname()中,return flag就Ok了。

    代码如下:

     1 var xmlhttp;
     2         function ckrname() {
     3             var rolename = document.getElementById("rolename").value;         
     4             var oldRoleName = document.getElementById("oldRoleName").value;         
     5             if (rolename==""||rolename==null||reg.test(rolename)) {
     6                 document.getElementById("sprname").style.color="red";
     7                 document.getElementById("sprname").innerHTML="角色名不能为空";
     8                 return false;
     9             }else{
    10                 xmlhttp = new XMLHttpRequest();
    11                 //绑定回调函数状态码改变事件
    12                 xmlhttp.onreadystatechange=resp;
    13                 //发送请求准备
    14                 xmlhttp.open("get", "<%=basePath%>RoleServlet?method=neweditrole&roleName="+rolename+"&oldRoleName="+oldRoleName, true);
    15                 xmlhttp.send(null);
    16                 return flag;
    17             }
    18         }
    19 var flag;
    20         function resp(){
    21             if(xmlhttp.readyState==4&&xmlhttp.status==200){
    22                 var txt = xmlhttp.responseText;
    23                 if(txt>0){
    24                     //alert("用户名已存在,请重新输入!");
    25                     document.getElementById("sprname").style.color="red";
    26                     document.getElementById("sprname").innerHTML="角色名已存在,请重新输入!";
    27                     flag=false;
    28                 }else{
    29                     document.getElementById("sprname").innerHTML = "√";
    30                     document.getElementById("sprname").style.color = "green";
    31                     flag=true;
    32                 }
    33             }
    34         }
    csdn:https://blog.csdn.net/lzxlfly
  • 相关阅读:
    linux报错jar包时出现“Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes”
    重写ajax方法实现请求session过期时跳转登录页面
    C++学习之NVI
    C++学习之Pimpl
    C++学习之allocator
    C++ 强制类型转换
    C++中的volatile关键字
    C++强大背后
    C++学习之智能指针
    C++学习之异常
  • 原文地址:https://www.cnblogs.com/lzxlfly/p/5879167.html
Copyright © 2020-2023  润新知