当组合框值更改时,JQuery隐藏行(按属性)

时间:2014-09-17 20:58:55

标签: javascript jquery

我有一个块下拉列表。当块下拉列表更改时,我想隐藏行IDID属性值不等于所选块选项值的行。

<TR>
<td>
<A HREF="#" class="link" id="102" sensorid="102" sensortype="1" sensorname="Thermistor"equipid="74" equipname="1535 NW" equiptype="1" equiptypename="Sensors" modeltype="1" modeltypename="Point Six" controlled="f" serialno="7054103C00000000" active="f" fieldID="1" blockID="10">
102</A>
</td>
<td>Thermistor</td><td>1535 NW</td><td>Sensors</td><td>Point Six</td><td>No</td><td>7054103C00000000</td><td>No</td>
</TR>

$('#cmbBlockID').change(function(){
    $("tr").show();
    cmbBlkID = $("#cmbBlockID").prop("value");
    if (cmbBlkID != 0){
            $("a[blockID!='"+cmbBlkID+"']").closest("tr").hide();//the line in question
    }
});

我的结果不一致。是否有更好的方法来编写行来隐藏一些行而不使用“最接近”?

1 个答案:

答案 0 :(得分:1)

试试这个:

$('#cmbBlockID').change(function(){
    $("tr").show();
    cmbBlkID = $("#cmbBlockID").val();

    if (cmbBlkID != 0){
        $("a[blockID!='"+cmbBlkID+"']").parent().parent().hide();
        // or
        $("tr").find('a').not('[blockID='"+cmbBlkID+"']').hide();
   }
});