JQuery + Find Checkbox with;在id

时间:2013-04-24 21:47:23

标签: jquery

我目前正在使用Jquery来改变第三方产品并遇到这个特殊的限制......我想

目前复选框ID和Name值有一个;在其中见下文

<input id="K48_h6;547ECE8D417501D623E11F94E0DF94FD" name="K48_1" value="h6;547ECE8D417501D623E11F94E0DF94FD" type="checkbox" style="cursor: pointer;">

我试图强制Jquery检查此框。这是我现在拥有的Jquery。

$("#K48_h6;547ECE8D417501D623E11F94E0DF94FD").prop("checked",true);

这导致我有一个Object不支持这个属性或方法。

由于这是第三方产品,因此我无法使用; Jquery运行服务器端代码加载。

3 个答案:

答案 0 :(得分:2)

除了转义,这是一个很好的解决方案,在将id作为属性进行过滤时似乎不存在此限制,如下所示:

$("input[id='K48_h6;547ECE8D417501D623E11F94E0DF94FD']").prop("checked",true);

请参阅working demo

答案 1 :(得分:1)

使用带有document.getElementById()的本机JS而不仅仅是jQuery。

http://jsfiddle.net/droppedonjapan/ppFSh/1/

修改

如果需要将该元素包装在jQuery中,可以在使用getElementById()捕获元素后将其包装。

答案 2 :(得分:1)

您是否考虑过转义(请注意\\之前的;)无效字符:

jQuery(function() {
    $('#K48_h6\\;547ECE8D417501D623E11F94E0DF94FD').prop('checked',true);
})

JS Fiddle demo

请注意,我不特别建议您尝试在id中使用无效字符,我会认真并强烈建议您更改任何第三方产品'使用,对于能够生成有效 id属性/属性的人。