我有一系列输入和选择以html形式混合在一起:
<th><input type="text" id="bGroup" name="search_group" /></th>
<th><input type="text" id="bEvent" name="search_event" /></th>
<th><input type="text" id="bBenefactor" name="search_benefactor" /></th>
<th><select name="search_status" id="bStatus">
<option value=""></option>
<option value="RS">RS</option>
<option value="CAN">Cancelled</option>
<option value="ICR">ICR</option>
<option value="HLD">Holding</option>
<option value="DEN">Denied</option>
</select>
</th>
<th><input type="text" id="bGiving" name="search_giving" /></th>
我正在尝试使用JQuery函数来调用表单元素的索引。 如果我只使用表单输入而不是这样选择,这可以正常工作:
$("tfoot input").keyup( function () {
/* Filter on the column (the index) of this element */
oTable.fnFilter( this.value, $("tfoot input").index(this) );
} );
如果我想使用两个表单输入元素,我必须手动分配这样的索引:
$("tfoot input#bGroup").keyup( function () {
/* Filter on the column (the index) of this element */
//alert($("tfoot input").index(this));
oTable.fnFilter( this.value, 1 );
} );
...
$("tfoot select#bStatus").on('change', function () {
/* Filter on the column (the index) of this element */
// alert($("tfoot select").parent().index(this));
oTable.fnFilter( this.value, 4 );
} );
这对我没有好处。
我想要做的是将两个表单元素索引在一起,这样我就不必手动分配行/写一堆函数了。 我尝试使用字段集,但我没有太多运气。
$("tfoot fieldset").on('keyup change', function () {
/* Filter on the column (the index) of this element */
oTable.fnFilter( this.value, $("tfoot fieldset").index(this) );
} );
任何帮助都是赞赏的。
答案 0 :(得分:2)
您可以选择输入和选择元素,并根据它们获取索引:
$("input, select", "tfoot").index(this)