只要给他们都一个共同的类名,并使用类选择绑定change事件:
HTML:
<input type="text" class="search-field" />
<input type="text" class="search-field" />
<select class="search-field" ><option>1</option><option>2</option></select>
<input type="radio" class="search-field" />
JS:
$('.search-field').change(function() {
// validate all search field values
// display search results based on values
// if search results already shown, filter based on $(this).val()
});
如果你有很多这些领域,而不是有一个处理程序绑定到每一个(如上面的代码完成),您将通过使用委托的事件处理程序获得更好的性能:
HTML:
<div id='parent'>
<input type="text" class="search-field" />
<input type="text" class="search-field" />
<select class="search-field" ><option>1</option><option>2</option></select>
<input type="radio" class="search-field" />
</div>
JS:
$('#parent').on('change', '.search-field', function() {
// validate all search field values
// display search results based on values
// if search results already shown, filter based on $(this).val()
});
一些样品标记会对人好点。 – mVChr 2012-08-03 23:53:28
@mVChr目前我将相关字段值存储为其他事件中的变量,并在每个事件中分别按$('#field')执行搜索操作。 这看起来愚蠢,多余且效率低下。我希望有更好的方法来完成这些任务。 – user793468 2012-08-04 00:03:05