多个元素的事件监听器 – jQuery

在我正在研究的ASP MVC页面中,三个输入字段的值确定了第四个的值。 邮政编码,州代码和其他称为香奈儿代码的东西将决定第四个字段的值,即区域代码。

我刚刚开始学习jQuery几周前,所以我首先想到你可以放一个.change事件来检查其他两个字段中的值,如果它们存在,则调用一个单独的方法来比较三个并确定Territory代码。 但是,我想知道是否有一种更优雅的方式来处理它,因为它似乎在不同的地方编写了很多相同的代码。

您可以通过指定多个选择器将回调绑定到多个元素:

 $(".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')});