1

すでに何度も投稿されている質問を投稿して申し訳ありません。しかし、私は私の特定の問題に対する答えを見つけることができません。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に設定している投稿を見つけました

それは私にはうまくいきませんでした。どんな助けでも大歓迎です!

4

1 に答える 1

0

やったー!できます!データ型を「json」から「jsonp」に変更しました。それでうまくいきました。

同じ問題を抱えている可能性のある人のためのちょっとした背景情報。テクタイトのFormmailPHPスクリプトを使用してフォームを処理し、メールボックスに送信しています。正直なところ、私はなぜ今それが機能するのかよくわかりません。私はWebプログラミングの初心者にすぎません。

この投稿への返信をありがとう、wirey!

于 2012-10-26T14:39:44.423 に答える