页面1:<script>
  function isPass(){
var userName=document.form.userName.value;  test7.getQuery(userName,result);
  }
  
  function result(data){
  alert(data);  }
 
  </script>
<input type="text"  name="userName">
 
    <input type="button" onclick="isPass()" value="测试用户名" >
    ---------------------------------
页面2
public String getQuery(String userName) { try { 
conn=DriverManager.getConnection(sConnStr,"chuanmei","123456"); 
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
sql="select * from userinfo where userid='"+userName+"'";
rs=stmt.executeQuery(sql); 
if(rs.next()){ error1="用户名已经存在";}
else
{
 error1="用户名不存在";
}

catch(SQLException ex){ 
System.err.println("aq.executeQuery "+ex.getMessage()); 

return error1; 
} 问题是:运行显示值是:null,也就是说没有执行语句呀,请问我写的代码差在哪里了?谢谢

解决方案 »

  1.   

    楼主贴出来的代码是没问题的,你可以试一下访问dwr的servlet,然后通过url传入一个username,看能不能返回成功?
      

  2.   

    先看你这个var userName=document.form.userName.value; 有没有值
    在看你sql语句中有没有值  
    在看返回值 慢慢调试么
      

  3.   

    js写错了function checkAccount(){
    var account = $("#account").val();
    userService.findUserAccount(account,function(data){
    if(data!=null){
    $("#accountError").html("用户账号已经存在!");
    $("#acid").val("1");
    }else{
    $("#acid").val("0");
    }
    });
    }这个是我的一个例子
      

  4.   

    1。第一确保你dwr 调用成功,看有没有进getQuery这个方法
    2。如果进了,你就把这个方法体全部注释,直接返回一个字符串
    3。如果成功,则说明是你数据库操作搞错了,如果不成功,说明你dwr 没配置好
      

  5.   

    断点, alert  调试一下看看