Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在ie中提交表格_Jquery_Internet Explorer 8 - Fatal编程技术网

Jquery 在ie中提交表格

Jquery 在ie中提交表格,jquery,internet-explorer-8,Jquery,Internet Explorer 8,我使用了e.preventDefault()停止表单提交,但在使用jQuery 1.8.2的IE8中不起作用 $(document).ready(function () { $("form").submit(function (e) { e.preventDefault(); $.ajax({ .......... }); }); }); 试试这个代码 if(e.preventDefault) e.pre

我使用了
e.preventDefault()
停止表单提交,但在使用jQuery 1.8.2的IE8中不起作用

$(document).ready(function () {
    $("form").submit(function (e) {
        e.preventDefault();
        $.ajax({
             ..........
        });
    });
});
试试这个代码

if(e.preventDefault) e.preventDefault(); else e.returnValue = false;
因为IE的某些版本不支持e.preventDefault()。在IE中,它是e.returnValue=false

您可以尝试:

// Disabling submit action for the #myForm form
$('#myForm').bind("submit", function(event){
    event.preventDefault();
});

实时演示:

在jQuery中实现这一点的最佳方法就是
返回false位于回调的末尾

比如:

什么是返回错误? 调用时返回false执行三个任务:

  • event.preventDefault()
  • event.stopPropagation()
  • 停止回调执行并在调用时立即返回
使用

e.returnValue = false; 
而不是

e.preventDefault();

哪个版本的IE?请指定:哪个版本的IE?jQuery的哪个版本?“不工作”的症状是什么?浏览器控制台中是否有错误?您已经做了什么来尝试修复它?@Spudley表单正在提交,仅在IE中没有阻止。请尝试1.8.3,因为1.8.2是不公开的,除非您复制它。两者都正常化了,但1.8.2jQuery中可能有一个bug,它正常化了
preventDefault()
方法,它适用于IE.@undefined当我第一次遇到这个问题时,上面的代码帮助了我。此后,我从未忘记在代码中添加此部分。;)用jQuery工作,就像他看起来正在做的那样,这是不需要的。似乎很奇怪,因为1.8.2和1.8.3已经规范化了代码:jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e){return;}//如果存在preventDefault,则在原始事件上运行它,如果(e.preventDefault){e.preventDefault();//否则,将原始事件的returnValue属性设置为false(IE)},否则{e.returnValue=false;}},谢谢。这与我选择的答案类似。但这一个更好一点。适用于XP上的IE8
e.preventDefault();