gpt4 book ai didi

javascript - jQuery - 使用自定义属性查找控件

转载 作者:行者123 更新时间:2023-11-28 21:08:00 25 4
gpt4 key购买 nike

我正在使用Asp.Net的CheckBoxList控件。为了获取选定的复选框,我在将数据绑定(bind)到复选框列表后为值添加自定义属性。

我能够在 jQuery 中获取选中的复选框,但我不知道如何使用复选框列表中的自定义属性来查找特定的复选框。

这是代码:

.cs 文件中的数据绑定(bind)后:

    foreach (ListItem li in cblRequestTypes.Items)
li.Attributes.Add("itemValue", li.Value);

获取选定的复选框:

$(":checkbox").each(function() {
if (this.checked) {

selectedChecks += $(this).parent().attr("itemValue") + "~";

}
});

现在我正在传递查询字符串中的值,并且基于此我必须找到具有在查询字符串中发送的 itemValue 属性的复选框。这部分不起作用,或者可能是我在这里遗漏了一些东西。

var id = $.QueryString["id"]
$(id.split("~")).each(function (i, item) {
$("checkbox[itemValue=" + item +"]").attr('check',checked');

});

这是 CheckBoxList 的 HTML 的呈现方式:

<span itemValue="3"><input id="chkBoxList_0" type="checkbox" name="chkBoxList$0" /><label for="chkBoxList_0">Text 1</label></span>
<span itemValue="5"><input id="chkBoxList_1" type="checkbox" name="chkBoxList$1" /><label for="chkBoxList_1">Text 2</label></span>
<span itemValue="6"><input id="chkBoxList_2" type="checkbox" name="chkBoxList$2" /><label for="chkBoxList_2">Text 3</label></span>
<span itemValue="7"><input id="chkBoxList_3" type="checkbox" name="chkBoxList$3" /><label for="chkBoxList_3">Text 4</label></span>
<span itemValue="8"><input id="chkBoxList_4" type="checkbox" name="chkBoxList$4" /><label for="chkBoxList_4">Text 5</label></span>
<span itemValue="9"><input id="chkBoxList_5" type="checkbox" name="chkBoxList$5" /><label for="chkBoxList_5">Text 6</label></span>

最佳答案

​$("span[itemValue=8] input")​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

这将为您提供 itemValue(在本例中)为 8 的范围内的复选框。

正如我在评论中所说,您将 value 属性放在 span 元素上有点令人困惑,而且它似乎也让您感到困惑,因为您的选择器是 $("checkbox[itemValue= "+ item +"]") - 这没有多大意义。

您的选择器将查找 checkbox 元素 - 该元素不存在;您要查找的元素是 input(带有 type“复选框”)。
它会尝试查找具有 dataValue 属性的属性 - 没有一个复选框会这样做,因为该属性位于 span 上。

关于javascript - jQuery - 使用自定义属性查找控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9386810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com