2013-04-16 89 views
0

我試圖執行一些計算使用下面的代碼中顯示的網址,每次運行錯誤代碼alert():functiom被調用。 PLs幫助爲什麼ajax請求失敗?

$("#button").click(function(){ 
    $("#form1").validationEngine(); 
    if($('div input[type=text]').val() != "") { 
     var textfield2=document.getElementById("textfield2").value; 
     var textarea=document.getElementById("textarea").value; 
     var dataS=$("#form1").serialize(); 
     $.ajax({ 
      type: "POST", 
      url: "http://some_site/ppp.php", 
      data:dataS, 
      crossDomain: true, 
      success: function(){ 
       $("#result").empty().html("<h2>Your request has been received </h2>"); 
      }, 
      error: function(){       
       alert(dataS); 
      } 
     }); 
    } 
    return false; 
}); 
+1

是您在發出請求的頁面所在的域上發出請求的網址? –

+2

我的猜測是失敗,因爲它是一個跨域請求,跨域服務器沒有實現CORS。 –

+0

@JohnBoker我不這麼認爲,請參閱'crossDomain:true'? –

回答

0

我不會介入跨域POST。我發現CORS在所有瀏覽器中都可靠地工作是非常困難的。有些瀏覽器會發送請求,但忽略結果,有些瀏覽器甚至不會發送請求,有些瀏覽器會正常工作。

相反,請考慮在同一個域上使用PHP代理,或者使用GET與JSONP來發送請求。