js 或者jq 如何把tr隐藏

我有一些tr id 为1-11B,1-12B,1-13B,1-14B.。。。1-100B.。1-21B,1-22B,1-23B,1-124B.。。。1-200B.。。。这些id....我如何根据”-“前面那个来隐藏所有的tr.也是说,已知某一个值是1 ,就把”-“之前为1的id的tr全部隐藏
如果不是tr 而是input 如何将“-”之前为2的input值设置为0?

第1个回答  2014-04-10

如下代码可以实现:

<script src="jquery-1.9.1.min.js"></script>
<script>
$(document).ready(function(){
var ids = "1"; //要隐藏的id的前半部分
$("#table1 tr").each(function(){
if($(this).attr("id").length > 0){
if($(this).attr("id").split("-")[0] == ids)
$(this).hide();
}
});
});
</script>
<table id="table1">
<tr id="1-11B"><td>1-11B</td></tr>
<tr id="2-23B"><td>2-23B</td></tr>
<tr id="1-12B"><td>1-12B</td></tr>
<tr id="2-26B"><td>2-26B</td></tr>
<tr><td>无ID</td></tr>
</table>

 


补充:

如果是input的话:

<script src="jquery-1.9.1.min.js"></script>
<script>
$(document).ready(function(){
var ids = "2"; //要改值的id的前半部分
$("input[type='text']").each(function(){
if($(this).attr("id").length > 0){
if($(this).attr("id").split("-")[0] == ids)
$(this).val("0");
}
});
});
</script>
<input type="text" id="1-11B" value="1-11B" />
<input type="text" id="2-12B" value="2-12B" />
<input type="text" id="1-16B" value="1-16B" />
<input type="text" id="2-18B" value="2-18B" />

第2个回答  2014-04-10
$("tr[id^=1-]").hide()追问

如果不是tr 而是input 如何将“-”之前为2的input值设置为0?

追答

$("input[id^=2-]").val(0);

本回答被提问者采纳