use*_*112 3 ajax jquery jsp servlets
我的index.jsp页面,用这行代码加载我的表单:
$('#box').load('/Edit_Data.jsp?id=' + myID);
Run Code Online (Sandbox Code Playgroud)
然后,我可以正确编辑表单中的数据.当我完成后,我点击一个触发此功能的按钮:
function save() {
$.ajax({
type: 'POST',
cache: false,
url: '/Edit_data',
data: $('form[name="formData"]').serialize(),
complete : function(jqXHR,textStatus) {
alert("complete " + jqXHR.responseText );
},
error: function(jqXHR,textStatus){
alert("status " + textStatus + ", response :" + jqXHR.responseText);
}
});
Run Code Online (Sandbox Code Playgroud)
}
和我的java servlet的路径"/ Edit_data",返回:
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/xml");
String xml = "<report><error_msg></error_msg></report>";
resp.getWriter().println(xml);
Run Code Online (Sandbox Code Playgroud)
单击按钮后的行为是:
我的问题是:为什么在完成ajax请求之后,会重新加载index.jsp页面.正确的行为应该是:在请求之后,由于我处理完整的功能,所以不能做任何事情
一条线索应该是servlet返回的错误消息,但我看不到错误的全部内容,所以我不明白是什么触发了错误......
另一个重要的线索,我只有firefox和chrome的这个问题.它适用于IE.
你能帮我解决一下吗?
非常感谢你,
蝙蝠
Ajax意味着异步请求...它不应该理想地重新加载,如果你没有做任何错误.好吧,你可以使用return false;
Or来调用ajax函数onclick="return AjaxFunction();对于你的情况它可能是:onclick="return save();
希望这能解决您的问题.
干杯!
| 归档时间: |
|
| 查看次数: |
5428 次 |
| 最近记录: |