表单的JQuery序列化程序未在IE中激发
JQuery serialize of form not firing in IE
我在jquery对话框中的一个表单没有在IE中发布时遇到问题。
它在chrome和FF中运行良好,将数据发送到我的MVC控制器,但从IE发送空值。
不过,我确实通过调用一个警报来显示序列化结果,使它以一种方式工作。这将导致表单正确序列化,并将值发送到服务器。
$("<div id='formModal'><img src='../../Content/images/ajax-loader.gif' /></div>")
.addClass("dialog")
.attr("id", $(this).attr("data-dialog-id"))
.appendTo("body")
.dialog({
width: 800,
position: [300, 50],
title: $(this).attr("data-dialog-title"),
close: function () { $(this).dialog('destroy').remove(); window.location.reload(true); },
modal: true,
buttons: {
"Save": function () {
var formdata = $("#timeForm").serialize();
$.post("/TimeTracker/AddTime",
$("#timeForm").serialize());
alert(formdata);
$(this).dialog("close");
$(this).dialog("destroy");
window.location.reload(true);
return false;
},
Cancel: function () {
$(this).dialog("close");
$(this).dialog("destroy");
}
}
})
.load(this.href);
一旦我删除了警报,表单就不再具有序列化的值。
这是我的JQuery脚本中的错误吗?还是别的什么?
对话框有close
事件处理程序,每当关闭对话框时,它都会重新加载页面window.location.reload(true)
。
在"保存"按钮上,您正在做很多事情,张贴表单,关闭对话框,然后再次重新加载页面。
如果您真的想在发布表单后重新加载页面,请等待帖子回复。您可以在其成功处理程序中编写代码。此外,重新加载页面无论如何都会关闭处理程序,因此您不必调用$(this).dialog("close")
,这将触发close
事件并再次重新加载页面。
试试这个。
buttons: {
"Save": function () {
var formdata = $("#timeForm").serialize();
$.post("/TimeTracker/AddTime",
formdata, function(){
window.location.reload(true);
});
//alert(formdata);
//$(this).dialog("close");
//$(this).dialog("destroy");
//window.location.reload(true);
return false;
},
Cancel: function () {
$(this).dialog("close");
$(this).dialog("destroy");
}
}
相关文章:
- jQuery blueimp文件上传:将N-1个文件上传到IE中的服务器
- Jquery Modal表单登录与AJAX-ASP经典上的IE 9
- JQuery脚本在IE中不起作用
- 任何人都知道IE7设置或更新/补丁,它可以防止IE因为jquery错误而无法加载页面
- IE中不支持JQuery window.location.hash
- JQuery日期选择器在IE 7上不起作用
- jQUery Code没有'我不在IE工作
- Jquery selectmenu组合框在IE和Chrome中每当按钮打开时就会关闭
- IE不发送发布数据PHP&jQuery
- Javascript/Css导航未显示在jquery文档上,仅在ie中准备就绪
- jquery表单提交无法使用多个输入(IE和Firefox)
- jQuery Div滚动功能:IE中的问题
- jQuery跨域发布在IE中的数据
- 拖放下载,支持IE Javascript/Jquery/Html5
- jQuery onClick() IE 中的音效和重定向
- IE:jQuery.show() 仅在显示之前/之后使用 alert() 时显示元素
- FireFox 和 IE Jquery 无法正常工作
- IE jQuery cookie issue
- 阿拉伯语文本不适用于IE..jquery ajax.
- Firefox/IE jQuery is(":hover") not working