Jquery 支柱检查不起作用-特殊情况

Jquery 支柱检查不起作用-特殊情况,jquery,checkbox,prop,Jquery,Checkbox,Prop,为什么当你点击第一个按钮时没有点击?为什么在引用同一个ckeckbox时,一个脚本不能工作,而另一个脚本却能正确工作 $('.button1')。单击(函数(事件){ //console.log(“click1”); $('table1.checkbox1').prop('checked',true); }); $('.button2')。单击(函数(事件){ //console.log(“click2”); $('.checkbox1').prop('checked',true); });

为什么当你点击第一个按钮时没有点击?为什么在引用同一个ckeckbox时,一个脚本不能工作,而另一个脚本却能正确工作

$('.button1')。单击(函数(事件){
//console.log(“click1”);
$('table1.checkbox1').prop('checked',true);
});
$('.button2')。单击(函数(事件){
//console.log(“click2”);
$('.checkbox1').prop('checked',true);
});

因为浏览器正在清理标记并删除
(因为它不是完整标记的有效标记--
输入
不能是
的直接子项)

因此,选择器(
#table1.checkbox1
)与任何元素都不匹配。呈现的标记如下所示:

<input type="checkbox" class="checkbox1" />
<input type="button" class="button1" value="Checked1" />
<input type="button" class="button2" value="Checked2" />

<table id="table1">

</table>

Chrome开发工具的参考图像:


因为浏览器正在清理标记并删除
(因为它不是完整标记的有效标记--
输入
不能是
的直接子项)

因此,选择器(
#table1.checkbox1
)与任何元素都不匹配。呈现的标记如下所示:

<input type="checkbox" class="checkbox1" />
<input type="button" class="button1" value="Checked1" />
<input type="button" class="button2" value="Checked2" />

<table id="table1">

</table>

Chrome开发工具的参考图像:


呈现上述html时,
中没有
输入
元素,因此第一个按钮不起作用。当您从代码中删除
#表1
选择器时,它将起作用。或者您需要添加有效的标记,只需将
table
更改为
div

$('.button1')。单击(函数(事件){
//console.log(“click1”);
$('table1.checkbox1').prop('checked',true);
});
$('.button2')。单击(函数(事件){
//console.log(“click2”);
$('.checkbox1').prop('checked',true);
});

呈现上述html时,
中没有
输入
元素,因此第一个按钮不起作用。当您从代码中删除
#表1
选择器时,它将起作用。或者您需要添加有效的标记,只需将
table
更改为
div

$('.button1')。单击(函数(事件){
//console.log(“click1”);
$('table1.checkbox1').prop('checked',true);
});
$('.button2')。单击(函数(事件){
//console.log(“click2”);
$('.checkbox1').prop('checked',true);
});



请更新已发布的答案,而不是复制它们。@BenM Ok sure,正在键入,当发布答案时,已经有一个答案。我知道这样做是可行的,我问如果两个按钮引用了checkbox@SamirLlorente您的代码不起作用,因为,在浏览器中呈现时,在
table1
id元素中没有class
checkbox1
的子元素。您确定@5740382,因为如果我更改了属性,它会正常工作,请对已发布的答案进行更新投票,而不是复制它们。@BenM确定,我知道这样做是可行的,我问如果这两个按钮引用了checkbox@SamirLlorente您的代码不起作用,因为,在浏览器中呈现时,在
table1
id元素中没有类为
checkbox1
的子元素。请确保@5740382,因为如果我更改属性,它会正常工作,我不想将其从表中删除,我想知道为什么按钮引用了相同的复选框,一个有效,另一个无效not@SamirLlorente不,我不是建议你把桌子移走。。。查看浏览器如何呈现标记。它无效,因此浏览器正在表外呈现您的
输入
元素,因此您的选择器无效。为什么所述选择器无效,有什么解释吗?我想您还没有理解我,您如何选择表内的复选框,但是使用id@SamirLlorente使表标记有效(通过添加
)。我不想将其从表中删除,我想知道如果按钮引用相同的复选框,为什么一个有效,另一个无效not@SamirLlorente不,我不是建议你把桌子移走。。。查看浏览器如何呈现标记。它无效,因此浏览器正在表外呈现您的
输入
元素,因此您的选择器无效。为什么所述选择器无效,有什么解释吗?我想您还没有理解我,您如何选择表内的复选框,但是使用id@SamirLlorente使表标记有效(通过添加
)。