0
我創建用PHP一個HTML表如下:HTML數字輸入錯誤:無限循環時jquery.change事件稱爲
$i = 1;
while($row = mysql_fetch_array($result)){
Print "<tr>";
Print "<td><input id='prEff[$i]' type='number' step='0.01' min='0.01' max='0.99' value='.85' </td>";
Print "<td>".$row['ErdEfficiency'] . "</td>";
Print "<td>".$row['TheoreticalSEC'] . "</td></tr>";
$i++;
}
輸入單元具有當所述數改變時調用一個函數jquery.change在範圍之內。在調試過程中,單擊向上或向下按鈕(使用chrome)會導致輸入遍歷所有值,直到達到上限或下限。所以這個函數被調用,但是隻有在整個值的範圍內運行完畢。
如果頁面沒有進行調試刷新,jquery被調用,但是按鈕被粘住,因爲它正在遇到所述的錯誤。
下面是簡單的jQuery功能:
$('[id^="prEff["]').change(function(){
var test = this;
alert("hi");
});
它是一個困難的bug跟蹤,我不知道是什麼原因造成的。它發生在輸入中的onchange屬性,以及JavaScript eventListener和jQuery的變化。這可能是PHP打印輸入的方式,但我嘗試了幾種不同的方式,但沒有成功。
是沒有結束的輸入標籤在你的代碼也還是就在這裏? – Steve 2013-03-14 19:10:22
你能提供一個顯示你的問題的jsFiddle嗎?我創建了http://jsfiddle.net/2nExK/,它在Chrome上似乎對我來說工作得很好。 – Steve 2013-03-14 19:13:06
PHP代碼與問題無關,因爲問題出在PHP完成之後的瀏覽器中;無論是否由PHP生成,相同的HTML代碼都會執行相同的操作。因此,看到實際的HTML會更有幫助。但既然你已經發布了PHP,我覺得我應該指出'mysql_xxx()'函數已被棄用。建議切換到'mysqli'或'PDO'庫。 – Spudley 2013-03-14 19:17:34