2011-10-19 84 views
0

我在IE(IE 9及更低版本)上遇到一個奇怪的問題。使用JavaScript(jQuery)的IE(IE9及更低版本)奇怪問題

我有一個表單有一個選擇和一個無線電。當任何人改變選擇或收音機中的任何內容時,它會計算總價。

下面是代碼:http://jsfiddle.net/Debiprasad/DLQ82/8/

它可以在所有瀏覽器的罰款。但是當我在IE上測試這個時:當我改變選擇值時,它工作正常。但是當我改變價值收音機時,它不起作用。

奇怪的部分是,如果我添加了任何函數的警報,當無線電的值發生變化時執行,那麼它在IE上工作正常。 可能是什麼問題,以及如何解決這個問題?

+0

我能夠運行jsFiddle沒有任何問題使用IE9。你有代碼可能導致這個? –

+0

在IE8和IE7模式下運行良好 – epascarello

+0

@James Johnson,epascarello:他提到了他共享的代碼在IE中工作 - 「通過jsfiddle.net共享的代碼在IE上工作正常」。 他應該發佈非工作代碼。 – Hallaghan

回答

3

在IE中,無線電和複選框控件上的更改事件僅在元素loses focus與其他瀏覽器不同時觸發。

我認爲jQuery修復了他們的change事件,在IE中使用propertychange,你可以通過將jsFiddle中的jQuery版本更改爲1.3.2並觀察不同的行爲來看到這一點。你在本地使用哪個版本的jQuery?

+0

看起來像這是解決方案。我在網站上使用jQuery 1.3.2。並在jsfiddle上選擇1.6.4。它不適用於IE上的jQuery 1.3.2。 – Debiprasad