繁体   English   中英

$(document).on('click'在chrome中不起作用

[英]$(document).on('click' is not working in chrome

这是我在js小提琴上尝试的简单代码:

<select id="test">
  <option value="">select</option>
  <option class="pid">1</option>
  <option class="pid">2</option>
  <option class="pid">3</option>
  <option class="pid">4</option>
</select>

$(function () {
    $(document).on('click', '.pid', function () {
       alert('here');
    });
});

点击http://jsfiddle.net/QRVSw/16/

click事件适用于整个select元素,而不适用于各个选项。 此外,最好使用在选择触发的change事件,而不是click事件,而click事件在click立即触发。

此外,您无需包装代码即可为OnReady做准备。 与此on的呼叫,你绑定事件的文件,这是已经上市,即使选择对象本身还没有到。

因此,您的代码可以像下面这样简化(并使工作):

 $(document).on('change', '#test', function () { alert('here'); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select id="test"> <option value="">select</option> <option>1</option> <option>2</option> <option>3</option> <option>4</option> </select> 

您可以尝试将onchange事件用于选择元素:

 $(function () { $(document).on('change', '#test', function () { alert('here'); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select id="test"> <option value="">select</option> <option class="pid">1</option> <option class="pid">2</option> <option class="pid">3</option> <option class="pid">4</option> </select> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM