单击选项标签,不能在IE和Chrome上工作。我在用onclick事件中的选项标记select盒、箱(子)<select>
<option onclick="check()">one</option>
<option onclick="check()">two</option>
<option onclick="check()">three</option></select>`onclick事件不在IE和Chrome上运行,但在Firefox中运行得很好,这里我不想使用onchange如果用户再次选择相同的选项,则不会触发事件。例句:假设用户第一次选择“一”下拉列表,我将在处理一些东西之后打开一个弹出窗口,假设用户想要选择相同的“一”下拉列表,它不会触发任何事件。这可以通过选项标签上的onclick事件来解决,但是它不能在IE和Chrome上工作。有这方面的工作吗?
3 回答
青春有我
TA贡献1784条经验 获得超8个赞
<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贡献1895条经验 获得超3个赞
将脚本放在选择的上方, 为SELECT设置onClick和onblur,如代码所示 并自定义检查函数。
<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>
- 3 回答
- 0 关注
- 317 浏览
相关问题推荐
添加回答
举报
0/150
提交
取消