为什么Jquery不理解#selector的动态控件id

时间:2014-06-25 09:51:42

标签: jquery

我有一个页面,我的服务器端按钮controlid呈现为'_ctl0:btnInsComplete',但当我尝试通过语法$("#_ctl0:btnInsComplete")选择我的控件时,它返回空对象。当我尝试$("id$='_ctl0:btnInsComplete']")时,它返回按钮对象。我想理解为什么我的第一个语法失败,即使我传递完整的客户端渲染的controlid或我犯了错误?有人可以帮助吗?

3 个答案:

答案 0 :(得分:7)

您在按钮ID中使用:,因此您需要将其转义。

使用

$("#_ctl0\\:btnInsComplete")

Docs

  

使用任何元字符(例如!"#$%&'()* +,。/:;< =>?@ [] ^`{| }〜)作为名称的文字部分,必须使用两个反斜杠进行转义:\\。

答案 1 :(得分:0)

使用Ends with Selector

尝试这样做
$("[id$=btnInsComplete]")

答案 2 :(得分:0)

试试这个

$('button[id="_ctl0:btnInsComplete"]')

OR

$('[id="_ctl0:btnInsComplete"]')