繁体   English   中英

使用jQuery检查变量复选框时遇到问题

[英]Having trouble checking a variable checkbox with jQuery

我有以下复选框:

<div class="row">
    <div class="large-2 columns"><input  id="contactTypesCheckbox[12]" name="contactTypesCheckbox[12]" class="contactTypesCheckbox" type="checkbox" value="Billing" />&nbsp;Billing</div>
    <div class="large-2 columns"><input  id="contactTypesCheckbox[15]" name="contactTypesCheckbox[15]" class="contactTypesCheckbox" type="checkbox" value="Creative" />&nbsp;Creative</div>
... etc ...
</div>

在加载时,我做了一些ajax,并下拉了json,该json包含一系列项目,指示应选中哪些复选框。

        $.each(data.contactTypes, function(key, contactType) {
            // key is = 15 in my test
            $('#contactTypesCheckbox[key]').prop('checked', true);
        });

因此,我希望对contactTypesCheckbox [15]进行检查,但这不是,没有错误。

我究竟做错了什么?

非常感谢

变量未在Javascript的字符串内扩展,您需要串联:

$('#contactTypesCheckbox\\['+key+'\\]').prop('checked', true);

您还需要转义括号,因为否则它们在选择器语法中具有特殊含义。

另请参阅以下问题:

HTML中id属性的有效值是什么?

有关在ID字符串中使用特殊字符(例如[] HTML5允许使用,但HTML4不允许。 并且由于上述需要逃避,最好不要使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM