我有一个包含以下几个选项的页面:
<div class="forms">
<div class="activity_form" id="activity_8">
<select id="activity_projectuser_id" name="activity[projectuser_id]">
<option value="1">1</option>
<option value="2">2</option>
</select>
</div>
<div class="activity_form" id="activity_9">
<select id="activity_projectuser_id" name="activity[projectuser_id]">
<option value="1">1</option>
<option value="2">2</option>
</select>
</div>
</div>
现在我有一个事件处理程序来检索所选的值,该值仅适用于数字8
:
var ready;
ready = function() {
$('#activity_8 #activity_projectuser_id').change(function() {
console.log("yes!");
});
};
$(document).ready(ready);
$(document).on('page:load', ready);
如何更改事件处理程序以使其适用于任何activity
ID?
答案 0 :(得分:1)
ID必须是唯一的。您可以根据name
来定位它们:
$('.activity_form [name="activity[projectuser_id]"]').change(function() { //or $('.activity_form select')
console.log("yes!");
});
答案 1 :(得分:0)
尝试此选择器
$('[name^="activity"]').change(function() { ... });
这将假设您的名字以activity
开头。对于包含活动,您还可以使用通配符*
代替^
。