【问题标题】:Detect change of select list using Jquery使用 Jquery 检测选择列表的变化
【发布时间】:2012-09-10 11:52:54
【问题描述】:

有没有办法检测选择列表的值何时被 javasscript 设置为空而 not 被用户设置?看来 change-event 只能通过鼠标或键盘触发。

有没有办法检测选择列表中的选项数量何时发生变化(添加、删除)?

【问题讨论】:

  • 非常类似于问题 4967454

标签: javascript jquery-selectors jquery


【解决方案1】:

当您使用 javascript 更改选择的值时,您必须手动触发更改事件。例如:

$('#myselect').val(10).change();

在此示例中,该值设置为 10 并触发更改事件。如果选择附加了一个事件处理程序,它将被执行。

【讨论】:

  • 这似乎是最好的答案,如果有点不直观。奇怪的是它没有在内部触发。
【解决方案2】:

使用Jquery的change函数

$("#idofselect").change(function(){ });

【讨论】:

    【解决方案3】:

    要回答您的第一个问题,并非不可能在更改事件本身中检测到导致选择列表更改的原因。

    但是,如果有 javascript 代码更改了选择列表,您可以在其中添加一些逻辑来执行此场景中所需的任务。

    【讨论】:

      猜你喜欢
      • 2014-03-01
      • 1970-01-01
      • 2016-08-16
      • 1970-01-01
      • 2010-10-22
      • 1970-01-01
      • 1970-01-01
      • 2011-11-12
      • 1970-01-01
      相关资源
      最近更新 更多