java问题??
用servlet做个简单的增删改查,当执行修改时,希望页面以弹框形式输出servlet里返回的信息?
servlet 里代码:
if(cDao.update()){
msg = "修改成功!";
}else{
msg = "修改失败!";
}
把msg 放在作用域里面了,怎么才能在点击提交按钮的时候弹出servlet里返回的信息?
------解决方案--------------------用session保存msg ,然后在按钮提交事件中拿出session
------解决方案--------------------msg放到request或者form的隐藏域里,前台取出来显示。。。
------解决方案--------------------
------解决方案--------------------servlet里return前加上resquest.setAttribute("msg",msg);
前台:jsp页面form表单加上<input type="hidden" name="msg" id="msg" value=<%=resquest.setAttribute("msg")%>>
<input type = submit value="" onblur ="outMsg()">
在js中
funcation outMsg(){
var message=document.getElementById("msg").value;
if(message!=null){
alert(message);
}
}
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------请问楼主,你要什么时候弹出框框呢????
引用下楼主的代码:
<input type = "submit" onblur="toAdd()" value ="添加" />
<input type="button" value="添加按钮" onclick="GetSession()" />
在下有几问需要向楼主提出:
1.这两句写在一个<form></form>标签内吗?一下小建议是这两个标签在form里
a.如果是点了“添加”按钮,form会被提交,页面就会跳转,所以那js也不会执行。
b.我想请问楼主您是点击“添加”按钮时候触发toAdd()吗?如果是请您改用onclick事件,切将type="button";如果你想继续使用onblur事件的话,请您使用tab键让“添加”获取光标,您就可能toAdd()方法被调用。
2.GetSession()这个方法也提交了表单,页面一样发生了跳转,怎么可能还会继续执行下面的js??
function GetSession(){
document.frm3.submit();//1
setTimeout("outMsg()",2000); //2
}
请楼主调换下1和2的顺序。
3.这个问题最严重,楼主,我想请您在一个新页面中得到servlet中返回的消息,如果我猜的没错楼主这些页面是不是这样的顺序 “列表/添加页面”点击提交->“添加servlet”->然后返回“添加页面”?如果不幸被我猜中,那请楼主这么做:“列表/添加页面”点击提交->“添加servlet”->然后“添加成功页面”通过settime方法跳转至“列表/添加页面”。如果不是请楼主写出您的顺序。
在弱弱的说一句,请楼主多给分,提交我的回帖动力啊!
------解决方案--------------------应该是ajax吧?网上很多了,不行我在贴代码