如何使用正则表达式对输入元素的name属性调用onclick函数



我有以下HTML标记:

<select class="form-control travel_mode" name="travel_request[travel_stays_attributes][0][travel_mode]" style="width: 139px;">
    <option value=""></option>
    <option disabled="true" selected="selected">Please Select</option>
    <option value="1">Flight</option>
</select>
<select class="form-control travel_mode" name="travel_request[travel_stays_attributes][1448001168204][travel_mode]" style="width: 139px;">
    <option value=""></option>
    <option disabled="true" selected="selected">Please Select</option>
    <option value="1">Flight</option>
</select>
<select class="form-control travel_mode" name="travel_request[travel_stays_attributes][1448002208899][travel_mode]" style="width: 139px;">
    <option value=""></option>
    <option disabled="true" selected="selected">Please Select</option>
    <option value="1">Flight</option>
</select>
<select class="form-control travel_mode" name="travel_request[travel_stays_attributes][1448002215357][travel_mode]" style="width: 139px;">
    <option value=""></option>
    <option disabled="true" selected="selected">Please Select</option>
    <option value="1">Flight</option>
</select>

我想在name属性的这些元素上调用onclickonchange函数,方法是编写一个正则表达式,这样我可以在单击上述任何下拉菜单时调用单个JS函数。如何为上述标记编写正则表达式?

您不需要正则表达式;所有元素上都有一个class,所以你可以使用它:

$('select.form-control').change(function() {
    console.log('I changed value...');
});

如果你想让它更具体地针对这些元素,你可以在一个以选择器开头的属性中使用name属性:

$('select[name^="travel_request[travel_stays_attributes]"]').change(function() {
    console.log('I changed value...');
});

相关内容

最新更新