在jsp页面添加一个部门,如果后台数据库添加成功了,则弹出成功提示框。如果创建失败(数据库异常等造成),则弹出失败提示框。
我现在用 页面离开时调用openwin()函数
<body onunload=openwin()>
script language="JavaScript">
  var flag = "0";
  function VerifyInfo() {
   flag = "1";
   if (document.form1.depName.value=="") {
   window.alert("请输入部门名称!");
   }
  }
  function openwin() {  
   window.alert("添加部门成功!");
  }
  </script>
但是很明显的错误,无论成功失败都会弹出那个固定的窗口,但是JS又没有办法和jsp中的值进行交互,唉,小弟才疏学浅,望高手指点!50送上!

解决方案 »

  1.   

    能不能在表单提交到servlet之后,在servlet中判断,然后弹出具体的对话框。
    望高手指教!
      

  2.   


    在jsp中判断:
    if(cnn.update()){
                        out.print("<script language=javascript>alert('提交成功!');</script>");
                    } else{
                        out.print("<script language=javascript>alert('提交失败!');script>");
                    }
      

  3.   

    ajax中的xmlhttprequest对象去看看吧 这个能满足你的要求。
      

  4.   

    谁说不能交互了 onload:
    <%String s = request.Attribute("s");%>
    <body onload=openwin()>
    script language="JavaScript">
      var flag = "0";
      function VerifyInfo() {
      flag = "1";
      if (document.form1.depName.value=="") {
      window.alert("请输入部门名称!");
      }
      }
      function openwin() {
       if(<%=s%>=="y"){
      window.alert("添加部门成功!");
       }
       if(<%=s%>=="n"){
      window.alert("添加部门失败!");
       }
       return false;  }
      </script>
      

  5.   

    这是转载别人的,你看看这些方法对你有没有帮助,这是用java script 直接连到数据库,然后进行数据验证的操作,如果你会用java连接数据库的话,那这个方法你应该能看得懂。<script language=javascript>
    function replace(v){ //容错问题,请读者自行进行判断。//定义SQL语句var sql = "select * from Dictionary where MainID='" + v + "'" ;//新建数据库连接对象和数据集存取对象var ConnDB = new ActiveXObject("adodb.connection"); var rs = new ActiveXObject("ADODB.Recordset"); //这里填入要连接的DSNConnDB.ConnectionString="DSN=***;uid=***;pwd=***"; ConnDB.open rs.open(sql,ConnDB,1,1); if (rs.RecordCount>0){ if (v==parseInt(rs("MainID"))){ //字符串连接document.all('txt').value = v + rs("MainValue"); var sql=null;rs.closeConnDB.closereturn; } else { var sql=null; alert("没有此代号!"); txt.select(); txt.focus(); rs.closeConnDB.close} }</script><input type=text id=txt name=txt onblur="replace(this.value)">