JQuery:change(函数()中存在多个条件


JQuery: Multiple conditions in .change(function ()

我想知道在.change函数中是否可能有多个条件。

例如,这是我的.js文件的前两行:

$(document).ready(function(){
     $("select[name=streettype]").change(function () {

这是一个处理房屋价值等问题的页面。我有一个表单,用户在其中输入他们的地址,"街道类型"是"rd"、"st"、"Ave"等的选择列表。

假设他们选择了"st"。这样做将禁用并启用表单中的一些其他选项。

然后,当他们继续填写表格时,会有另一个选择列表。他们选择"2层"。这样做应该还启用和禁用一些其他选项并打印一些消息。

然而,由于只有当"街道类型"发生变化时,功能才会发生变化,因此选择"2层"不会发生任何变化。相反,用户必须选择"2层",然后返回并将"街道类型"更改为其他值(例如"rd"),然后返回"st",以便进一步更改表单中的其他值。

所以我想知道是否有可能有多种改变的条件。

谢谢!

jQuery选择器的工作方式与CSS选择器类似,因此您可以执行以下操作:

$("select[name=streettype],select[name=storey]").change(

并且它将触发它们中的任何一个。

当您希望它们共享相同的逻辑时,为什么还要按名称进行区分?我想添加一个类似的类

<select name="streettype" class="listenChange">...</select>
<select name="storey" class="listenChange">...</select>

然后像这样处理

$("select.listenChange").change(function(){
    var name $(this).attr("name"),
        newValue = $(this).val();
    switch (name) {
        case 'streettype':
            //..
            break;
        case 'storey':
            //..
            break;
    }
});
i think this may be work 
$("select[name=streettype1], select[name=streettype2]").change(function(){
});