【问题标题】:jQuery click/change even on select is not workingjQuery单击/更改即使在选择上也不起作用
【发布时间】:2011-11-08 20:08:07
【问题描述】:

我正在尝试捕获下拉列表的更改,但是无论在 ff 还是 chrome 中,单击和更改事件都不起作用。这是源html代码:

<select class="select" id="querycond_select_Baitgenesymbol" style="max-width: 400px">
    <option>APC</option>
    <option>CTNNB1</option>
    <option>DNMT1</option>
    <option>ELF3</option>
    <option>EPHB2</option>
    <option>MRE11</option>

和 jQuery:

$('.select').click(function() {
    alert("!!!!!!!")
});

我也尝试用更改替换点击,但对我来说也没有成功。

【问题讨论】:

  • 你把上面的js fn放在jQuery dom ready事件处理程序里了吗?
  • 您是否使用了&lt;/select&gt; 结束标签?您是否使用了$(document).ready 包装器? jsfiddle.net/mblase75/rfZwz

标签: jquery click onchange


【解决方案1】:

确保:

  • 在您的页面中包含 jQuery
  • 将您的代码包装在ready 处理程序中
  • 使用change 而不是click

$(function(){
  $('#querycond_select_Baitgenesymbol').change(function() {
    alert("!!!!!!!");
  });
});

【讨论】:

    【解决方案2】:

    工作正常...http://jsfiddle.net/tXy6Q/ 尝试将其添加到 document.ready()

    • 如果选择框是基于逻辑动态添加的,建议使用live() 方法..

    • 使用更改事件而不是单击

    • 还可以使用 firefox 错误控制台检查是否有任何错误..

    【讨论】:

    • 我已将它添加到 document.ready() 并使用了 bind() 和更改事件,但它仍然无法正常工作。选择框确实是动态添加的,网上的例子很少,能举个例子吗?谢谢!
    • 如果它是动态的,这应该可以解决问题 $('.select').live('click change', function() { alert("!!!!!!!"); } );顺便说一句,刚刚注意到你错过了;发出警报消息后......无论如何都要检查并让我们知道......干杯!!
    • 我使用了 bind 并将函数放在动态添加选择框的逻辑中,然后它就可以工作了!谢谢!
    【解决方案3】:

    试试这个:

    $(function(){
        $("#querycond_select_Baitgenesymbol").change(function(e){
            alert("here");
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-09
      • 2013-07-17
      相关资源
      最近更新 更多