Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 多元素的事件侦听器-jQuery_Jquery Ui_Jquery - Fatal编程技术网

Jquery ui 多元素的事件侦听器-jQuery

Jquery ui 多元素的事件侦听器-jQuery,jquery-ui,jquery,Jquery Ui,Jquery,在我目前正在处理的ASP MVC页面中,三个输入字段的值决定了第四个字段的值。邮政编码、州代码和其他称为香奈儿代码的代码将决定第四个字段(称为地区代码)的值 几周前我刚开始学习jQuery,因此我首先认为您可以放置一个.change事件来检查其他两个字段中的值,如果它们存在,则调用一个单独的方法来比较这三个字段并确定区域代码。然而,我想知道是否有一种更优雅的方法来实现这一点,因为它似乎在不同的地方编写了很多相同的代码 通过指定多个选择器,可以将回调绑定到多个元素: $(".field1, .fi

在我目前正在处理的ASP MVC页面中,三个输入字段的值决定了第四个字段的值。邮政编码、州代码和其他称为香奈儿代码的代码将决定第四个字段(称为地区代码)的值


几周前我刚开始学习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只是一个示例来演示该原理。这同样适用于模糊/改变/任何东西。这基本上就是我所想的。每个事件调用一个函数。由于每个事件的逻辑都不同,这可能是可以简化的。谢谢