ie7中没有调用ajax成功函数

时间:2012-10-25 21:30:49

标签: jquery ajax internet-explorer

我很遗憾地发布了一个已经多次发布的问题。但我找不到我具体问题的答案。我有一个通过jQuery ajax()方法提交的表单。它在Firefox和Safari中完美运行。但是在Internet Explorer 7中,成功函数没有被执行。

我的javascript代码如下所示:

/* FORM SCRIPT */
$('#creactform').submit( submitForm ); 

$('a.vrzknoplink').click(function(){
    alert('stap 1');
    var contactForm = $('#creactform');
    // Submit the form to the PHP script via Ajax
    $('ul#vrzknop').fadeOut(function() {
        $('p#wachttext').fadeIn();
    });

    // Actually send the form info to PHP script
    $.ajax( {
      url: contactForm.attr( 'action' ) + "?ajax=true",
      type: contactForm.attr( 'method' ),
      dataType: 'json',
      data: contactForm.serialize(),
      success: submitFinished   
    } );

    // Handle the Ajax response     
    function submitFinished( response ) {
        alert(response.Result);

        if ( response.Result == "OK" ) {
            $('div#formdiv').fadeOut("fast",function() {
                $('div#successmessage').show();
                $('p#wachttext').fadeOut();
            });
            $('.formfields').val( "" );
            $('.inputtextarea').val( "" );
            $('div#successmessage').delay(6000).fadeOut("fast",function() {
                $('div#formdiv').show();
                $('ul#vrzknop').show();
            });                 
        } 
        else if (response.Result == "ERROR" && response.ErrorCode == "missing_fields") {
            alert("De velden met een * zijn verplicht om de aanvraag te versturen.");
            $('ul#vrzknop').show();
        }
    };
    return false;
});


function submitForm() {
  return false;
};

我找到了这个问题的帖子,问题是一个尾随的逗号, 我找到了解决方案将缓存设置为false的帖子

这对我不起作用。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

万岁!!有用!我已将数据类型从'json'更改为'jsonp'。这就是诀窍。

任何可能遇到相同问题的人的背景信息。我正在使用来自tectite的Formmail PHP脚本来处理表单并将其发送到我的邮箱。说实话,我现在并不是真的为什么它起作用,我只是网络编程的初学者。

非常感谢,感谢你对这篇文章的回复!