Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery/Javascript:是否启用复选框列表_Javascript_Jquery_Asp.net - Fatal编程技术网

JQuery/Javascript:是否启用复选框列表

JQuery/Javascript:是否启用复选框列表,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,启用或禁用这种控件没有问题,但如果我只想知道状态怎么办?要知道其状态是启用还是禁用 .prop("disabled",false); .attr("disabled", true); 这些都是设置而不是获取 或者我甚至试过类似的 $get("<%=cklst.ClientID %>").disabled; $get(“”)已禁用; 不工作 有什么提示吗?谢谢 试试看: $(“#myid”).prop(“禁用”) Jquery文档: 根据您的示例,可能是: $(“#”).prop

启用或禁用这种控件没有问题,但如果我只想知道状态怎么办?要知道其状态是启用还是禁用

.prop("disabled",false);
.attr("disabled", true);
这些都是设置而不是获取

或者我甚至试过类似的

$get("<%=cklst.ClientID %>").disabled;
$get(“”)已禁用;
不工作

有什么提示吗?谢谢

试试看:

$(“#myid”).prop(“禁用”)

Jquery文档:

根据您的示例,可能是:

$(“#”).prop(“已禁用”)

请注意,要设置disabled属性,请使用:

$(“#”)prop(“禁用”,true)


好的,那么你使用的是一个复选框列表,它有点不同。如果查看此代码中发出的html:

<asp:CheckBoxList ID="ck1" runat="server" Enabled="false"
RepeatDirection="Vertical" RepeatLayout="Table" EnableViewState="true" >
    <asp:ListItem>Item 1 Disabled</asp:ListItem>
         <asp:ListItem>Item 2 Disabled</asp:ListItem>
         <asp:ListItem>Item 3 Disabled</asp:ListItem>
         <asp:ListItem>Item 4 Disabled</asp:ListItem>
         <asp:ListItem>Item 5 Disabled</asp:ListItem>
         <asp:ListItem>Item 6 Disabled</asp:ListItem>
</asp:CheckBoxList>

项目1残疾人
项目2残疾人
项目3残疾人
项目4残疾人
项目5残疾人
项目6残疾人
你会看到它是这样的:

<table id="ctl00_cphMain_ck1" disabled="disabled" border="0">
    <tbody><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_0" type="checkbox" name="ctl00$cphMain$ck1$0" disabled="disabled"><label for="ctl00_cphMain_ck1_0">Item 1 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_1" type="checkbox" name="ctl00$cphMain$ck1$1" disabled="disabled"><label for="ctl00_cphMain_ck1_1">Item 2 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_2" type="checkbox" name="ctl00$cphMain$ck1$2" disabled="disabled"><label for="ctl00_cphMain_ck1_2">Item 3 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_3" type="checkbox" name="ctl00$cphMain$ck1$3" disabled="disabled"><label for="ctl00_cphMain_ck1_3">Item 4 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_4" type="checkbox" name="ctl00$cphMain$ck1$4" disabled="disabled"><label for="ctl00_cphMain_ck1_4">Item 5 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_5" type="checkbox" name="ctl00$cphMain$ck1$5" disabled="disabled"><label for="ctl00_cphMain_ck1_5">Item 6 Disabled</label></span></td>
    </tr>
</tbody></table>
$("#<%=cklst.ClientID %> input")[0].prop("disabled")

项目1残疾人
项目2残疾人
项目3残疾人
项目4残疾人
项目5残疾人
项目6残疾人
(现在这可能会有所不同,具体取决于为ClientIDMode和其他父控件ID设置的值的类型。)

ASP.NET所做的是创建一个表html元素,该元素(有效地)具有复选框列表的单个ID,然后在表中的每一行上,都有一个带有已枚举ID的html复选框元素,例如ctl00_cphMain_ck1_0、ctl00_cphMain_ck1_1、ctl00_cphMain_ck1_2等

每个复选框都设置了禁用的属性

因此,在客户端,在处理复选框时,您必须更具体地针对它们。如果只使用checkboxlistid,那么将得到一个不正确的值,因为JQuery无法识别表元素上的禁用属性。因此,您需要查看一个(或多个)子复选框

所以你可以这样做:

<table id="ctl00_cphMain_ck1" disabled="disabled" border="0">
    <tbody><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_0" type="checkbox" name="ctl00$cphMain$ck1$0" disabled="disabled"><label for="ctl00_cphMain_ck1_0">Item 1 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_1" type="checkbox" name="ctl00$cphMain$ck1$1" disabled="disabled"><label for="ctl00_cphMain_ck1_1">Item 2 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_2" type="checkbox" name="ctl00$cphMain$ck1$2" disabled="disabled"><label for="ctl00_cphMain_ck1_2">Item 3 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_3" type="checkbox" name="ctl00$cphMain$ck1$3" disabled="disabled"><label for="ctl00_cphMain_ck1_3">Item 4 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_4" type="checkbox" name="ctl00$cphMain$ck1$4" disabled="disabled"><label for="ctl00_cphMain_ck1_4">Item 5 Disabled</label></span></td>
    </tr><tr>
        <td><span disabled="disabled"><input id="ctl00_cphMain_ck1_5" type="checkbox" name="ctl00$cphMain$ck1$5" disabled="disabled"><label for="ctl00_cphMain_ck1_5">Item 6 Disabled</label></span></td>
    </tr>
</tbody></table>
$("#<%=cklst.ClientID %> input")[0].prop("disabled")
$(“#输入”)[0]。道具(“禁用”)
这实际上是在说:对于checkbox list表元素,获取第一个input子元素,并告诉我disabled属性是什么


有意义吗?

只需使用
var value=$(“#youritem”).prop()
@SableFoste不工作,它引发异常,我使用的是jquery 1.8.2不工作,不是错误,但值为“false”,但实际上该控件是启用的Corry Sean无论该控件是启用还是禁用,它们都返回“false”。您确定正确设置了disabled属性吗?我不会说ASP,但我觉得这个答案很清楚,谢谢分享。另一个选项是使用Jquery中的.attr()函数检查表上的“disabled”属性。