2010-06-07 35 views
1

我想將整個asp.net表單發佈到某個url。幫助用jQuery提交一個asp.net表單

我曾嘗試:

$.post("http://www.someaddress.com", $("form").serialize()); 

我也曾嘗試:

$.ajax({ 
    type:"POST", 
    url:"http://www.someaddress.com", 
    data: $('form').serialize(), 
    success: function(){ 
     alert('yay'); 
    } 
}); 

在這兩種情況下,提交是好的,但沒有數據與它一起過去了。

當我在firebug控制檯中測試form.serialize()時,這顯示我的表單序列化很好。當我在提琴手中查看提交時,我可以看到數據部分未設置。也許我不理解數據部分,但每一個教程都顯示了這種方式 - >序列化表單並將其設置爲數據。我必須做什麼才能將我的序列化表單作爲我請求中的數據?

我在想什麼?另外 - 爲什麼在螢火蟲的NET標籤顯示所有這些請求作爲方法選項?

+1

是在您的域的URL? – SLaks 2010-06-07 13:28:35

回答

1

是這個

url:"http://www.someaddress.com" 

只是一個例子,還是你嘗試訪問外部域? (這可以解釋問題)。

根據您的評論,ajax same origin policy不允許訪問外國域名。

+0

即時通訊試圖訪問一個外地域 - 是的它的一個例子 – 2010-06-07 13:29:03

+0

啊好的 - 你能解釋我/爲什麼這個工程當我把一個ASP按鈕在我的網頁上,並設置一個postbackurl到一個外地域?我基本上想要實現相同的沒有重定向。 – 2010-06-07 13:32:42

+0

基本上,不可能的。你有權訪問「外地」嗎?如果是這樣,你可以使用'jsonp'來傳輸數據。 – jAndy 2010-06-07 13:35:05

0

您無法對外部域執行Ajax請求。由於這是不允許的(針對安全)在JavaScript訪問外部頁面(不是在您的域名)