簡體   English   中英

有關在表單提交上使用JSONP的時間問題

[英]Timing issue concerning using JSONP on a form submit

我正在嘗試使用JSONP在服務器B的頁面上提交表單時將數據推送到服務器A。

這是我的JS-

my.submitOrder = function () {

    var scriptTag = document.createElement('SCRIPT');
    scriptTag.src = ServerAUrl + "?" + urlData;
    scriptTag.type = "text/javascript";
    scriptTag.async = 0;

    document.getElementsByTagName('HEAD')[0].appendChild(scriptTag);

};

我想在用戶提交表單時執行此js,所以這是我認為可以完成工作的HTML-

<form action="http://localhost:3348" onsubmit="return my.submitOrder();" >
    <input type="submit" value="submit"  />
</form>

提交發生得很好,submitOrder函數得以執行,但是在命中服務器A之前,我對ServerAUrl的調用已“取消”(根據firebug)。實際上,它成功執行了大約5次中的1次,但似乎沒有成功一種模式。 我知道這樣的事情是可能的,因為Google Analytics(分析)可以做到。 有任何想法嗎?

您沒有阻止Submit事件,因此在加載目標頁面時照常發送表單。 在卸載過程中,打開的請求(例如JSONP腳本)被取消。

為了防止事件的默認操作,請調用其preventDefault方法(尤其是在使用高級事件注冊時,或者僅從內聯處理程序return false 。當前,您正在返回undefined

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM