我在一個頁面上有幾個表格,每個表格可能有多個下拉列表。表格和下拉列表是自動生成的。我想要定位的表具有數字ID,並且所有下拉列表的值都是數字。jquery在表格中隱藏額外的下拉列表
因爲我想其中一個表HTML示例代碼到目標
<table id="15">
<tr>
<td>
<div id="dd_4_0">
<select id="4_0">
<option value=""></option>
<option value="18">VNDR64324</option>
<option value="21">MFG5321</option>
<option value="27">OTHER</option>
</select>
</div>
</td>
</tr>
<tr>
<td>
<div id="dd_2_6">
<select id="2_6">
<option value=""></option>
<option value="12">VN32R2345</option>
<option value="21">5678</option>
<option value="27">NEM</option>
</select>
</div>
</td>
</tr>
</table>
一旦在表中的下拉列表中的一個選擇,我想隱藏其他的下拉列表中。 我有代碼可以工作,但有很多迭代循環,如果可能,我希望不做。有沒有更清晰的方式來寫這個?
$('table').click(function() {
if($.isNumeric(this.id))
dd = $("#" + this.id + " select");
$.each(dd, function(){
if($.isNumeric($(this).val()))
{
selectedId = this.id;
$.each(dd, function(){
if(this.id != selectedId)
$('#dd_' + this.id).hide();
});
}
});
});
您無權修改生成表的代碼嗎?添加幾個類可以讓你的生活更輕鬆。 – 2013-05-10 19:29:14
'2_6'不是數字。 – Barmar 2013-05-10 19:32:47
是的,全是我的,所以我可以在那裏編輯任何東西。然而,這就是說我的下拉列表都是選中的下拉列表,它是一個jQuery插件,它添加了自己的類並進行了一些重複,這使得增加額外的類變得困難。 – jessier3 2013-05-10 19:32:53