我使用隱藏的輸入元素的初始值而不是動態更新的值,IE9有問題。在IE9中使用緩存隱藏的輸入值而不是更新的值
我已經創建了下面這樣你可以看到我的問題現場:http://jsfiddle.net/NN8gM/
- 該頁面加載,並顯示隱藏的輸入值。當動態更新 值時(通過單擊 示例中的複選框),初始值(6.00)仍顯示在IE 中,而不是新值(7.00)!
更新後的值在我嘗試過的其他瀏覽器中正確顯示。在Firefox中運行示例以查看所需的效果。
爲什麼?
我使用隱藏的輸入元素的初始值而不是動態更新的值,IE9有問題。在IE9中使用緩存隱藏的輸入值而不是更新的值
我已經創建了下面這樣你可以看到我的問題現場:http://jsfiddle.net/NN8gM/
更新後的值在我嘗試過的其他瀏覽器中正確顯示。在Firefox中運行示例以查看所需的效果。
爲什麼?
我建議這樣做的正常方式和使用:
$('#si').attr('value', '7.00');
我只是檢查在IE9你的代碼,有一兩件事我想告訴你,這不是真的,它的採摘緩存值,
其實這個代碼是不工作$(this).next().attr('value', '7.00');
我換成你的那部分代碼與$('input[type=hidden]').attr('value', '7.00');
它工作得很好,下面是一個演示。
我仍然搞清楚爲什麼你寫的代碼在Mozilla中並不在ie9中。 (actaully它非常艱難的在IE9調試,它幾乎甚而不開放)
嗯..很奇怪。像上面的@Kwpolska一樣,這兩種解決方案都可以工作。我猜想爲什麼'$(this).next()。attr('value','7.00');'在其他瀏覽器中可用,但不在ie中更重要。爲什麼'.next()'很重要,因爲有很多輸入的id爲「si」。我需要動態更新它們中的一個**(**是下一個**到觸發按鈕)。 – Mike123
實際工作(當然,沒有的.next()),問題是我不能夠使用'$ ('#si'),因爲那會認爲它是唯一的。所以問題是使用: '$(this).next()' 爲什麼這個工作在Firefox等,但不是在IE9 – Mike123
它是Internet Explorer,whaddya期望? –
哈哈..的確如此。我是這個遊戲的新手,我已經很難學習。 – Mike123