jquery - 选中所有具有js数组名称的复选框

2022-08-30 15:50:48

我想以如下形式使用JQuery“全部检查”函数:http://jetlogs.org/jquery/jquery_select_all.html

我的问题是我从php脚本生成表单,我不知道我提前有多少个复选框。我使用“数组”命名约定来获取$_POST数据中所有选定的复选框值...所以我的复选框是这样的:

<input type="checkbox" name="items[]" value="<?php echo $id ?>">

但是这个JQuery声明不起作用:

$("input[@name=items[]]").each(function()    
{    
    this.checked = checked_status;    
});

可能是因为我的“项目”末尾的“[]”搞砸了JQuery声明......我试图像这样写@name=items[]:“@name=items[]”,并在[和]之前放一些反斜杠,这样它们就不会被视为特殊字符,但它不起作用......

如果有人知道一个解决方案并愿意分享,那就太好了!:)


答案 1

用(没有空格)转义内部括号 - 它应该可以解决问题。\\

这个选择器对我有用:

$('input[name=items\\[\\]]')

答案 2

尝试使用

$('input[name="items[]"]')

无需使用。请注意,引号外的选择器是 。否则,可能会导致解析错误。@"'