表单输入和选择的javascript索引()

时间:2013-06-11 20:06:19

标签: javascript jquery html

我有一系列输入和选择以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) );
    } );

任何帮助都是赞赏的。

1 个答案:

答案 0 :(得分:2)

您可以选择输入和选择元素,并根据它们获取索引:

 $("input, select", "tfoot").index(this)