检查页面加载时检查框不起作用

时间:2015-04-06 13:18:30

标签: javascript jquery

您好我想知道为什么我的复选框在页面加载期间告诉它时不会检查。这就是我所拥有的:

if($('#contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0').is(":checked")==false){
   alert('works');
   $('input:checkbox[value="Sample 1"]').prop("checked", true);
}

它达到警戒但在此之后它不会检查房产。

编辑这是HTML

的一部分
<input id="contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0" type="checkbox" name="ctl00$contentPlaceholder$C003$ctl00$ctl00$C010$ctl00$ctl00$checkBoxes$0" value="Sample 1">

如果我确实喜欢使用相同选择器的点击事件,那么它可以正常工作。

EDIT2 它适用于JSfiddle。我猜这与Sitefinity有关。我不得不看一看。

5 个答案:

答案 0 :(得分:0)

试试这个:

$('input:checkbox[value="Sample 1"]').prop("checked", "checked");

答案 1 :(得分:0)

使用 .attr()

$('input:checkbox[value="Sample 1"]').attr("checked", true);

答案 2 :(得分:0)

你的代码正在运行,也许你不会添加jquery库..

我只是放了一个测试代码来看它

<html>
<head>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>
<input type="checkbox" value="Sample 1" id="contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0" >test1</input>

<input type="checkbox" value="Sample 2" id="contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0" >test2</input>

<script> 



if($('#contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0').is(":checked")==false){
   alert('works');
   $('input:checkbox[value="Sample 1"]').prop("checked", true);


}

 </script>
</body>

</html>

答案 3 :(得分:0)

您的代码运行正常,如下面的代码段所示。只需确保至少包含jQuery 1.6库,因为这是添加prop()方法的时候。

https://api.jquery.com/prop/

&#13;
&#13;
if ($('#contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0').is(":checked") == false) {
  alert('works');
  $('input:checkbox[value="Sample 1"]').prop("checked", true);
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="contentPlaceholder_C003_ctl00_ctl00_C010_ctl00_ctl00_checkBoxes_0" type="checkbox" name="ctl00$contentPlaceholder$C003$ctl00$ctl00$C010$ctl00$ctl00$checkBoxes$0" value="Sample 1">
&#13;
&#13;
&#13;

答案 4 :(得分:0)

可能是一个Sitefinity代码在您的代码后运行并覆盖您的值。