2012-11-07 70 views
0

我知道有很多這樣的問題,但我沒有找到我的答案。

下面是在所有瀏覽器中運行良好的代碼。但IE忽略它。

HTML(二提交的一種形式)

<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()); 
} 
+0

你檢查錯誤控制檯? –

+0

@Kirill Ivlev ie有錯誤控制檯? – gbtimmon

+0

你的js指向form1和form2而不是form0。你有沒有嘗試http://api.jquery.com/serializearray/ – 2012-11-07 17:50:50

回答

0

好這個問題是與IE瀏覽器的安全限制,並添加JSON來POST。我是幫我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 
     }); 

感謝丹尼爾)