编程语言
首页 > 编程语言> > JavaScript-Internet Explorer 10-jQuery单击选择选项不起作用

JavaScript-Internet Explorer 10-jQuery单击选择选项不起作用

作者:互联网

我试图将事件jQuery事件侦听器click(function(){// doStuff})映射到< option>元素,但是在单击/焦点上,IE不会执行我的功能.

在FF和Chrome中,它可以完美运行.在IE10中,点击选项无效; HTML元素onClick =“ doFunction()”或on.(‘click’,…)事件都没有.

这是jsFiddle

<select id="someId" name="someName" size="10" multiple="yes">
<option value="ALL">--All--</option>
<option value="X1">X1</option>
<option value="X2">X2</option>
<option value="X3">X3</option>
<option value="X4">X4</option>
<option value="X5">X5</option>
<option value="X6">X6</option>
<option value="X7">X7</option>
<option value="X8">X8</option>
<option value="X9">X9</option>
</select>


$(document).ready(function () {
    $('#someId option[value="ALL"]').click(function () {
        $('select option').attr('selected', true);
        $('select option[value="ALL"]').eq(0).attr('selected', false);
    });
});

解决方法:

维利亚姆,恐怕我有个坏消息. IE10不会真正触发选项的“ click”事件,而只会触发“ select”事件.因此,您可以做的是将“ click”事件处理程序置于select上,跟踪所选值并对其执行操作.

Demo

$('#someId').click(function () {
    if ($("#someId option:selected").eq(0).val() === 'ALL') {
        $('select option').prop('selected', true);
        $('select option[value="ALL"]').eq(0).prop('selected', false);
    }
});

标签:internet-explorer,internet-explorer-10,javascript,jquery
来源: https://codeday.me/bug/20191030/1969976.html