單擊選項(xiàng)標(biāo)簽,不能在IE和Chrome上工作。我在用onclick事件中的選項(xiàng)標(biāo)記select盒、箱(子)<select>
<option onclick="check()">one</option>
<option onclick="check()">two</option>
<option onclick="check()">three</option></select>`onclick事件不在IE和Chrome上運(yùn)行,但在Firefox中運(yùn)行得很好,這里我不想使用onchange如果用戶再次選擇相同的選項(xiàng),則不會觸發(fā)事件。例句:假設(shè)用戶第一次選擇“一”下拉列表,我將在處理一些東西之后打開一個(gè)彈出窗口,假設(shè)用戶想要選擇相同的“一”下拉列表,它不會觸發(fā)任何事件。這可以通過選項(xiàng)標(biāo)簽上的onclick事件來解決,但是它不能在IE和Chrome上工作。有這方面的工作嗎?
3 回答

青春有我
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊
<select onchange="valueChanged(this.value); this.selectedindex = -1"> <option style="display: none"></option> <option value="1"> 1 </option> <option value="2"> 2 </option> <option value="3"> 3 </option> <option value="4"> 4 </option></select>

蠱毒傳說
TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個(gè)贊
將腳本放在選擇的上方, 為SELECT設(shè)置onClick和onblur,如代碼所示 并自定義檢查函數(shù)。
<script> selectHandler = { clickCount : 0, action : function(select) { selectHandler.clickCount++; if(selectHandler.clickCount%2 == 0) { selectedValue = select.options[select.selectedIndex].value; selectHandler.check(selectedValue); } }, blur : function() // needed for proper behaviour { if(selectHandler.clickCount%2 != 0) { selectHandler.clickCount--; } }, check : function(value) { // you can customize this alert('Changed! -> ' + value); } }</script><select onclick="selectHandler.action(this)" onblur="selectHandler.blur()"> <option value="value-1"> 1 </option> <option value="value-2"> 2 </option> <option value="value-3"> 3 </option> <option value="value-4"> 4 </option></select>
添加回答
舉報(bào)
0/150
提交
取消