var username = null;
function rg(){
username = document.getElementById('username').value;
DwrService.updateUsersList(username, true, callback);
//alert(data+"   callback");
}function callback(data) {
if (data != null && data.length > 0) {
$("userid").value = data; // 注册成功,把userid放到当前页面
window.location = '<%=root%>/jsp/index.jsp?username='+username;
}else{
alert("请不要双开,谢谢!");
return false;
}
}大家看下  我的rg方法执行DwrService.updateUsersList(username, true, callback);后  回调函数callback里面的
$("userid").value = data; // 注册成功,把userid放到当前页面 
这句话可以执行  但是跳转就不执行了  这是什么原因呢?我的data我已经测试过了  绝对可以执行   如果把$("userid").value = data; // 注册成功,把userid放到当前页面 放在跳转语句下面的话,  那么可以跳转  但是userid又得不到  谁能告诉下呢    希望有好心人帮下忙  我的QQ574409779

解决方案 »

  1.   

    如果你用到了struts框架,那么是struts与dwr有冲突
    举个例子来解决这个问题:
    如:
      <form action="#" method="post" onsubmit="return rg()">
           用户名:<input type="text" name="name"><br>
            密码:<input type="password" name="pwd"><br>
         <input type="submit" value="提交">
       </form >将上面改成:
    用户名:<input type="text" name="name"><br>
            密码:<input type="password" name="pwd"><br>
         <input type="button" id="btnLogin" onclick="rg()" value="提交">如果你想按enter键就执行提交事件那么你可以这样: <script type="text/javascript">
    document.onkeydown=function() 

    if (event.keyCode == 13) 

    var btn = document.getElementById("btnLogin"); 
    btn.focus(); 
    btn.click(); 

    }
    </script>