如果该行内的asp:Textbox为空,我想隐藏表行。
我做对了吗?甚至有可能这样,还是我应该采取不同的方法?
$(document).ready(function() {
$(".TableRow").each(function() {
var el = $(this);
var child = el.parent().children(".TexBoxTR").lenght;
if (child > 0) {
el.parent().hide();
}
});
})
<table>
<tr class="TableRow">
<td class="tg-yw4l">A</td>
<td colspan="3" class="tg-yw4la" style="width: 250px">
<asp:textbox runat="server" Width="274px" ID="textbox2" CssClass="auto-style1 TexBoxTR" Enabled="false"></asp:textbox>
<asp:textbox runat="server" Width="274px" ID="textbox3" CssClass="auto-style1" Visible="false"></asp:textbox>
<asp:textbox runat="server" Width="274px" ID="textbox4" CssClass="auto-style1" Visible="false"></asp:textbox>
</td>
</tr>
<tr class="TableRow">
<td class="tg-yw4l">A/1</td>
<td class="tg-yw4l" style="width: 250px">
<asp:textbox runat="server" Width="274px" ID="textbox5" CssClass="auto-style1 TexBoxTR" Enabled="false"></asp:textbox>
</td>
<td class="tg-yw4l">
<asp:textbox runat="server" Width="111px" ID="textbox6" CssClass="auto-style1"></asp:textbox>
</td>
<td class="tg-a86t" align="right">
<asp:textbox runat="server" Width="68px" ID="textbox7" placeholder="0" Enabled="False"></asp:textbox>
</td>
</tr>
<tr class="TableRow">
<td class="tg-yw4l">A/2</td>
<td class="tg-yw4l" style="width: 250px">
<asp:textbox runat="server" Width="274px" ID="textbox8" CssClass="auto-style1 TexBoxTR" Enabled="false"></asp:textbox>
</td>
<td class="tg-yw4l">
<asp:textbox runat="server" Width="111px" ID="textbox9" CssClass="auto-style1"></asp:textbox>
</td>
<td class="tg-a86t" align="right">
<asp:textbox runat="server" Width="68px" ID="textbox10" placeholder="0" Enabled="False"></asp:textbox>
</td>
</tr>
<tr class="TableRow">
<td class="tg-yw4l">A/3</td>
<td class="tg-yw4l" style="width: 250px">
<asp:textbox runat="server" Width="274px" ID="textbox11" CssClass="auto-style1 TexBoxTR" Enabled="false"></asp:textbox>
</td>
<td class="tg-yw4l">
<asp:textbox runat="server" Width="111px" ID="textbox12" CssClass="auto-style1"></asp:textbox>
</td>
<td class="tg-a86t" align="right">
<asp:textbox runat="server" Width="68px" ID="textbox13" placeholder="0" Enabled="False"></asp:textbox>
</td>
</tr>
</table>
答案 0 :(得分:3)
请使用以下代码
$(document).ready(function () {
$(".TableRow td .TexBoxTR").each(function () {
if ($(this).val() == null || $(this).val() == "") {
$(this).parent().parent().hide();
}
});
});
答案 1 :(得分:1)
您需要拼写lenght
length
但是你可能是这个意思
$(".TableRow").each(function () {
$(this).toggle($(this).find(".TexBoxTR").val()==""); // show if not empty
});
答案 2 :(得分:1)
您可以检查文本框的值长度,然后找到最接近的tr,如下所示:
$(document).ready(function () {
$(".TableRow td .TexBoxTR").each(function () {
if ($(this).val().trim().length==0) {
$(this).closest("tr").hide();
}
});
});
答案 3 :(得分:0)
您可以使用此:
$(document).ready(function () {
$(".TableRow td .TexBoxTR").each(function () {
if ($(this).val().trim().length == 0) {
$(this).closest(".TableRow").hide();
}
});
});