javascript - 隐藏复选框和标签

标签 javascript jquery asp.net

场景: 我有一个 ul 和 li 以及一个复选框和中继器内的标签,这些一起形成了一个复选框列表。我有一个控制复选框行为的 javascript 文件。 我成功地用 JavaScript 代码隐藏了复选框,但是当我尝试隐藏标签时它不起作用。

我将发布 ASP.NET 代码以便更好地理解:

<asp:Repeater ID="Repeater1" runat="server" DataSource="<%# GetSecondAreas(CurrentLocationName) %>">
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li class="area">
<input type="checkbox" class="category" value="<%# string.Concat(CurrentLocation.Area1,"| ", CurrentLocation.Area2)%>" />
<label>
<%#CurrentLocation.Area2%>
</label>
<asp:Repeater ID="Repeater2" runat="server" DataSource="<%# GetThirdAreas(CurrentLocation.Area2) %>">
<HeaderTemplate>
<ul>
</HeaderTemplate>
<ItemTemplate>
<li>
<input type="checkbox" class="category" value="<%#string.Concat(CurrentLocation.Area1,"| ", CurrentLocation.Area2,"| ", CurrentLocation.Area3)%>" />
<label id="last">
<%#CurrentLocation.Area3%>
</label>
</li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>
</li>
</ItemTemplate>
<FooterTemplate>
</ul>
</FooterTemplate>
</asp:Repeater>

这是 JavaScript 代码:

function updateByArea(current) {
//If current is unchecked => uncheck all child checkboxes
if (current.attr("checked") == null || current.attr("checked") == "")
    $j(".area ul li input[value^='" + current.val() + "']:checked").removeAttr("checked").hide(); //checkbox
    $j('label[id="id_val"]').hide();
$j("#searchFilter .area>input:checkbox:checked").each(function (i, item) {
    $j(".area ul li input[value^='" + $j(item).val() + "']:not(:checked)").attr("checked", "checked").show(); //checkbox
    $j('label[id="id_val"]').show();
});

}

我在这里发布的只是我为 id="last"的标签所做的尝试

问题:

我是否正确修改了标签的 javascript 代码,以便当我勾选复选框以隐藏和显示复选框和标签时?

P.S:在我现在拥有的代码中,它只隐藏了复选框。

提前谢谢

最佳答案

改变

.hide();

.parent().hide();

这将选择父级[应该是 li] 并将其隐藏。

关于javascript - 隐藏复选框和标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12578196/

相关文章:

javascript - Lodash:如何创建具有新对象结构的数组

javascript - 如何在 Ionic 应用程序中调用 document.getElementById ('c1' .innerHTML 中的变量

javascript - 我怎样才能像这样 : https://riot. design/en/对导航栏中的元素进行动画处理?

javascript - 变量 === 未定义与 typeof 变量 === "undefined"

javascript - 有没有办法从 javascript/jquery 链接设置 asp.net session 变量?

asp.net - Radgrid 停止同时添加新行和编辑行的功能

javascript - 如何显示图像并在 5 秒后隐藏它?

javascript - eslint 错误 "guard-for-in"不清楚如何使用 for-in

javascript - 如何创建元素的浅拷贝?

c# - 如何在没有母版页的情况下在 asp.net 中打印页面并更改页面的配色方案?