我有一段代码,当一组表单值发生变化时,这个人写了30个函数。
我希望将它们组成一个函数
$('#jobs_held').change(function() {
// do something, with a little variation
});
$('#residence_years').change(function() {
// do something, with a little variation
});
$('#how_long').change(function() {
// do something, with a little variation
});
无论如何我可以做点像......
$('#jobs_held', '#residence_years', '#how_long').change(function(){
// do something, with a little variation
});
答案 0 :(得分:6)
将它们加入单个字符串以使用multiple-selector
[docs]。
$('#jobs_held,#residence_years,#how_long').change(function(){
// do something, with a little variation
// "this" can be used to refer to the specific element
// that received the event.
alert( this.id ); // to alert the ID of the element
});
...或者找一些像班级这样的共同身份来全部选择它们。
答案 1 :(得分:3)
给他们所有的课程,例如“问题”,然后只是$('.question').change(function() {});
如果需要根据类型改变,可以访问函数中已更改元素的id。
编辑:我建议使用多方选择的类方法,因为它更容易维护(你可以添加元素到HTML而不回来编辑JS)。但是,这是真的,多选择更符合实际问题。而且,如果改变HTML是更好的解决方案。
答案 2 :(得分:1)
$('#jobs_held,#residence_years,#how_long').change(function(){
// do something, with a little variation
});