簡體   English   中英

與Ajax通話僅工作兩次

[英]Ajax call with works only twice

我有一個奇怪的人。

我有一個具有onclick事件的div,它調用一個函數,而該函數又進行了ajax調用。 這樣做在Safari中可以正常工作兩次。 每次使用iPhone運行相同的程序都能完美運行。

這就是我在做什么:

// this is created by the Ajax call
no1 = 0;
no2 = 1;
formName = "myButton" + no1 + no2;
//newItem is what is returned by the Ajax call
newItem = "<div id=\"trainingOptions\" onclick=\"request_ajax('".$formName."')\">";
//this places the onclick event into the HTML code
document.getElementById.("myDiv").innerHTML = newItem;

因此,基本上,這就是onclick事件一遍又一遍地放置的方式。 當request_ajax答復時,這部分將替換為完全相同的部分。

現在,該功能在Safari中運行兩次,與在iPhone上單擊的頻率相同。

任何想法為什么會發生這種情況?

最佳庫爾特

您提供的要素很少,無法幫助我們。 因此,這只是以下猜測:

您的附加內容:

newItem = "<div id=\"trainingOptions\" onclick=\"request_ajax('".$formName."')\">";

由於您沒有在添加div之前清除div,在我看來,您正在添加具有相同id的多個div。 由於瀏覽器以不同方式處理多個等效ID,因此這可能是導致您遇到問題的原因。

只能有一個具有一個ID的元素,而不能有兩個具有相同ID的元素,這會導致沖突。 所以也許這就是您正在發生的事情。

暫無
暫無

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

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