我剛剛發現(困難的方法),您無法對另一個域進行ajax調用。在IE6,7,8和9發送跨域數據
我讀過有關的iFrame(只適用於IE6)和跨域XML請求(只從IE8開始工作)
那麼,有沒有其他辦法? 我基本上只需要發送數據到另一臺服務器,沒有收到它。
我剛剛發現(困難的方法),您無法對另一個域進行ajax調用。在IE6,7,8和9發送跨域數據
我讀過有關的iFrame(只適用於IE6)和跨域XML請求(只從IE8開始工作)
那麼,有沒有其他辦法? 我基本上只需要發送數據到另一臺服務器,沒有收到它。
我應該澄清:我不想使用(大)庫,而不能使用代理腳本。
基本上,我決定一個GET將是「足夠好」爲我所試圖做的(軌道印象)
所以當腳本被觸發時,它創建一個iframe,隱藏它,並設置源鏈接到我的腳本+正確的GET參數。沒有形式需要。
聽起來像你需要使用服務器端代理腳本。即向(例如)PHP腳本發送AJAX請求,該腳本將爲您提供HTTP/cURL請求。
JSONP可能是你需要的。那裏有很多例子。 這裏有一個很好的一個: http://www.ibm.com/developerworks/library/wa-aj-jsonp1/
我想結合和<form>
的能力甚至可以發送到另一個域。 主文件:
<iframe id=ifr src=form.html style="display: none;"></iframe>
<input id=send-me><input type=button onclick="senddata();" value=Send>
<script>
function senddata()
{
var ifr = document.getElementById('ifr'),
f = ifr.contentWindow.document.forms[0];
f.elements.data.value = document.getElementById('send-me').value;
f.submit();
}
</script>
form.html:
<form action="http://another.doma.in/" method=post>
<input type=hidden name=data>
</form>
這將使POST HTTP請求到另一個域和發送出現的<input id=send-me>
內容。
請注意,這只是基本的建議,如果您想要例如多次發送數據而不刷新,則需要進行調整。
然後,你可以使用添加一個'圖像'的DOM,並在'onload'上刪除它...這個問題是,你不能真正檢查請求是否成功,但如果這可能不重要。 –