0

そのような質問がたくさんあることは知っていますが、答えが見つかりません。

これがすべてのブラウザでうまく機能するコードです。しかし、IEはそれを無視します。

HTML(2つの送信に対して1つのフォーム)

<form id="form0" method="post" accept-charset="UTF-8" 
 onsubmit="sendEmails(); return false;">
              <input id="ef" value="">
</form>

JS

function sendEmails() {

        var email = $('#ef').val();

        $('#FormValue_EmailAddress').val(email);
        $('#YMLPValue').val(email);

        $.ajaxSetup({ cache: false });          

        $.post($("#form1").attr("action"), $("#form1").serialize());
        $.post($("#form2").attr("action"), $("#form2").serialize());
}
4

1 に答える 1

0

問題は、IE のセキュリティ制限と POST への json の追加にありました。私は助けられ、私のJSはこのバリアントに変更されました

$.support.cors = true; // force cross-site scripting
        $.ajaxSetup({ cache: false });          

        var request = $.ajax({
            type: "POST",
            url: $("#form1").attr("action"),
            data: $("#form1").serialize(),
            sync: false,
            dataType: 'jsonp',
            crossDomain: true        
        });

        request = $.ajax({
            type: "POST",
            url: $("#form2").attr("action"),
            data: $("#form2").serialize(),
            sync: false,
            dataType: 'jsonp',
            crossDomain: true
        });

ダニエルに感謝)

于 2012-11-08T14:15:40.493 に答える