1

我正在使用 Drupal 7(对 Drupal 和 Javascript / jQuery 来说都是新的)并且我有一个名为“field-name-field-activity”的类,现在我想要的是在该类中对每个输入进行 onchange。

jQuery('.field-name-field-activity :input').onchange = function() {
    //enter code here
};

我不确定我是否在这里使用我的 onchange,我还看到有些人使用 onChange 而不是 onchange,不知道有什么区别,但是谁能告诉我如何在我的示例中正确使用 onchange?

4

5 回答 5

4

使用 jquery 就change可以了:

$('.field-name-field-activity').change(function() {
  // your code here
});

编辑:

由于事件要与文本类型绑定,更好的方法是使用input事件,例如:

$('.field-name-field-activity').on('input', function() {
    // your code here
});

如果是文本字段,该onchange事件可能无法在某些浏览器上正常工作。

于 2013-05-03T08:49:17.640 回答
2

这是一个简单的语法错误试试这个jQuery('.field-name-field-activity :input').change(function() { //enter code here });

这是指向 api 参考http://api.jquery.com/change/的链接

于 2013-05-03T08:48:08.253 回答
1

试试这样:

jQuery('.field-name-field-activity input').change(function() {
    //enter code here
});

简单的演示在这里

于 2013-05-03T08:48:21.257 回答
0

关于性能,我建议不要使用 ":input"-Selector。

因为 :input 是一个 jQuery 扩展而不是 CSS 规范的一部分,所以使用 >:input 的查询不能利用原生 DOM >querySelectorAll() 方法提供的性能提升。

来源:http ://api.jquery.com/input-selector/

如果类名仅与输入元素相关,则只需使用 Ankit Jaiswal 建议的类选择器,因为单类选择器性能最佳。

来源:jQuery 元素+类选择器性能

于 2013-05-03T09:14:38.013 回答
0

尝试这个 -

jQuery('.field-name-field-activity').on('change',function() {
    //enter code here
});

http://api.jquery.com/change/

于 2013-05-03T08:48:58.247 回答