Jquery 如何按属性选择元素';值包含美元符号时的s值?

Jquery 如何按属性选择元素';值包含美元符号时的s值?,jquery,asp.net,jquery-selectors,Jquery,Asp.net,Jquery Selectors,我有以下HTML元素: <input type="checkbox" name="ctl00$ContentPH$ucFuncionEdit1$ckEsMenu" /> 前一行代码引发以下错误: 错误:语法错误,无法识别的表达式: [name=ctl00$$ContentPH$$UCFunctionedit1$$ckEsMenu] 您引用以下值: jQuery ('[name="ctl00$ContentPH$ucFuncionEdit1$ckEsMenu"]'); 在处理属性选

我有以下HTML元素:

<input type="checkbox" name="ctl00$ContentPH$ucFuncionEdit1$ckEsMenu" />
前一行代码引发以下错误:

错误:语法错误,无法识别的表达式: [name=ctl00$$ContentPH$$UCFunctionedit1$$ckEsMenu]

您引用以下值:

jQuery ('[name="ctl00$ContentPH$ucFuncionEdit1$ckEsMenu"]');

在处理属性选择器时,最好总是引用该值(尽管如果该值是一个仅包含字母a-Z[不区分大小写]和数字0-9[但不以数字开头]的单词,则可以不使用该值)。

您谈论的是clientid,因此可以通过两种方式进行操作: 1.当您的js代码位于html所在的同一页面时:

jQuery('#<%=ckEsMenu.ClientID%>').click();

您可以用两个反斜杠(
\\
)转义
$
符号:


jQuery('[name=ctl00\\$ContentPH\\$ucfunctionedit1\\$ckEsMenu]')

对于简单的问题,简单的答案:)@Jack-我不是被动的攻击性或尖刻的,我是在用它来激发批判性思维。对不起,那没用。我强烈建议不要做最坏的打算,不要对人发火。答案是
jQuery('[id=“ctl00$ContentPH$ucfunctionedit1$ckEsMenu”]')
id
name
都是属性,因此您可以将属性选择器同时用于这两个属性。您好。谢谢,但我在同一个页面中不使用JS,这是一种不好的做法,相反,我通过
在母版页底部使用它。而选择器
jQuery(“input[id$=ckEsMenu]”
它不是防弹的,如果您有两个以“ckEsMenu”结尾的id,则会导致问题。您使用两个具有相同id的元素吗?你为什么要这么做?这不是最佳做法。我指的是以“ckEsMenu”结尾的两个ID,而不是两个相同的ID。这与ID的结尾无关。您应该编写[ID$=yourFullID]。\\$不替换为\$,因为\会转义后面的字符
jQuery('#<%=ckEsMenu.ClientID%>').click();
jQuery("input[id$=ckEsMenu]").click();