我在我看来有这段代码。如何在弹出窗口中显示此成功消息
我的数据库添加消息后显示完美,但我的网格不显示更新的结果。如果我继续
return true;
当我点击提交按钮,我收到弹出窗口马上,然后加入到数据库?这显示了我在网格中更新的结果。
我在我看来有这段代码。如何在弹出窗口中显示此成功消息
我的数据库添加消息后显示完美,但我的网格不显示更新的结果。如果我继续
return true;
当我点击提交按钮,我收到弹出窗口马上,然后加入到数据库?这显示了我在网格中更新的结果。
如果在提交函数结束时返回true,则浏览器将转到表单的action属性中的url。我认为如果你在ajax调用中关注了表单数据,你应该总是返回false。您需要将更新的网格作为ajax成功方法的一部分。
你不能有ajax弹出窗口,仍然让表单提交正常的方式。
$(function() {
$('#form4').submit(function() {
...
$.ajax({
...
success: function (result) {
...
// update grid
grid_container = $("#grid").html('');
$("<table>").appendTo(grid_container);
for (ii = 0; ii < result.grid.length; ++ii) {
tr = $("<tr>").appendTo(table);
for (jj=0; jj < result.grid[ii].length; ++ii) {
td = $("<td>").text(result.grid[ii][jj]).appendTo(tr);
}
}
// show success message
alert('Saved NewServiceTypeCategory Successfully. Thank you!');
}
});
return false;
});
});
现在你所要做的就是让你的服务器端处理程序返回带有网格数据的XML。
AJAX请求是异步的,因此它在回调完成前完成表单提交例程,这可能会解释您得到的结果。我认为可能会有一个异步设置,您可以关闭,以便首先完成操作/回调。
感谢Brian,该怎么做?你能告诉我吗? – kumar 2010-09-28 02:27:16
检查了这一点:第一个选项有一个异步属性,你设置为false。在这里阅读更多:http://api.jquery.com/jQuery.ajax/请注意,可能会有影响。您可能需要考虑重构您的代码以通过回调传递true/false ... – 2010-09-28 13:56:48
感谢MattSmith如何在最后显示成功消息? – kumar 2010-09-28 02:29:02