^ jQuery选择器在IE上不起作用

时间:2016-05-22 22:42:34

标签: jquery drop-down-menu jquery-selectors

我正在调试一段代码,从两个不同的select元素中选择元素,实际上multiselct它使用这样的东西:

$('[id^=my_id]').on('click', '*', function() {

原因是第一个选择是

<select id="my_id_1"></select>

第二个是:

<select id="my_id_2"></select>

jQuery选择器在chrome和firefox上运行得很好但在IE / Edge上失败了 我正在考虑使用类而不是那个选择器,但是由于^选择器在文件中被大量使用,我想知道是否有办法让它适用于那种类型的选择器。

当用户点击多个列表中列出的每个元素时,选择旁边会显示一个div,其中包含有关该选项的更多信息。 Something like this:

提前谢谢!

3 个答案:

答案 0 :(得分:0)

将您的功能更改为此

 $('body').on('change', '[id^=my_id]', function() {

});

答案 1 :(得分:0)

你总是需要使用jquery。如果你说jquery选择器是问题,我的建议是使用HTML DOM queryselectorall:

document.querySelectorAll(CSS selectors). 

对于多个选择器,请用逗号分隔每个选择器。

并为事件添加处理程序:

element.addEventListener(event, function,      useCapture);

就像@charlietfl所说,正确的事件是改变没有点击。

阅读:

http://www.w3schools.com/jsref/met_document_queryselectorall.asp

http://www.w3schools.com/js/js_htmldom_eventlistener.asp

答案 2 :(得分:0)

正如charlietfl在评论中注意到的那样,我的问题是click事件,而不是选择器。 在select我应该使用change事件。

$('[id^=my_id]').on('change', function() {