Jquery ui 多元素的事件侦听器-jQuery
在我目前正在处理的ASP MVC页面中,三个输入字段的值决定了第四个字段的值。邮政编码、州代码和其他称为香奈儿代码的代码将决定第四个字段(称为地区代码)的值Jquery ui 多元素的事件侦听器-jQuery,jquery-ui,jquery,Jquery Ui,Jquery,在我目前正在处理的ASP MVC页面中,三个输入字段的值决定了第四个字段的值。邮政编码、州代码和其他称为香奈儿代码的代码将决定第四个字段(称为地区代码)的值 几周前我刚开始学习jQuery,因此我首先认为您可以放置一个.change事件来检查其他两个字段中的值,如果它们存在,则调用一个单独的方法来比较这三个字段并确定区域代码。然而,我想知道是否有一种更优雅的方法来实现这一点,因为它似乎在不同的地方编写了很多相同的代码 通过指定多个选择器,可以将回调绑定到多个元素: $(".field1, .fi
几周前我刚开始学习jQuery,因此我首先认为您可以放置一个
.change
事件来检查其他两个字段中的值,如果它们存在,则调用一个单独的方法来比较这三个字段并确定区域代码。然而,我想知道是否有一种更优雅的方法来实现这一点,因为它似乎在不同的地方编写了很多相同的代码 通过指定多个选择器,可以将回调绑定到多个元素:
$(".field1, .field2, .field3").click(function() {
return field1 +
field2 +
field3;
});
如果需要根据单击的元素执行特定操作,另一个选项是创建一个执行实际计算的函数,然后从每个回调调用该函数
var calculate = function() {
return field1 +
field2 +
field3;
};
然后在每次单击时调用此函数:
$(".field1").click(function() {
// Perform field1-specific logic
calculate();
});
$(".field2").click(function() {
// Perform field2-specific logic
calculate();
});
// etc..
这意味着你不会重复你自己。这对我很有用
jQuery(document).on('scroll', ['body', window, 'html', document],
function(){
console.log('multiple')
}
);
增加另一种可能性,以防万一这可能会帮助某人。此版本应适用于动态创建的字段
$("#form").on('change', '#Field1, #Field2, #Field3', function (e) {
e.preventDefault();
console.log('something changed');
});
我不明白为什么您需要不止一个函数来进行计算,或者需要不止一个事件处理程序来启动helper函数。这些函数将在输入字段中没有任何值之前运行。您可以这样做,但是使用
模糊
而不是单击
。这样,当用户移动到下一个字段时,将调用calculate()
。@Luke click只是一个示例来演示该原理。这同样适用于模糊/改变/任何东西。这基本上就是我所想的。每个事件调用一个函数。由于每个事件的逻辑都不同,这可能是可以简化的。谢谢