是否有一个选择器,我可以查询元素的ID,以给定的字符串结束?
假设我有一个元素的id为ctl00$ContentBody$txtTitle。我如何通过传递txtTitle得到这个?
是否有一个选择器,我可以查询元素的ID,以给定的字符串结束?
假设我有一个元素的id为ctl00$ContentBody$txtTitle。我如何通过传递txtTitle得到这个?
当前回答
因为这是ASP。NET,你可以简单地使用ASP <%= %>标签打印生成的txtTitle的ClientID:
$('<%= txtTitle.ClientID %>')
这将导致……
$('ctl00$ContentBody$txtTitle')
... 当页面呈现时。
注意:在Visual Studio中,智能感知会因为你在JavaScript中放入ASP标签而对你大喊大叫。您可以忽略这一点,因为结果是有效的JavaScript。
其他回答
在你要搜索的词后加上下划线或$会更安全,这样它就不太可能匹配到以相同ID结尾的其他元素:
$("element[id$=_txtTitle]")
(其中element是你要查找的元素类型,例如div, input等。
(注意,您建议您的ID中倾向于使用$符号,但我认为。net 2现在倾向于在ID中使用下划线,因此我的示例使用下划线)。
试试这个:
<asp:HiddenField ID="0858674_h" Value="0" runat="server" />
var test = $(this).find('[id*="_h"').val();
一个例子: 选择所有ID以_edit结尾的<a>s:
jQuery("a[id$=_edit]")
or
jQuery("a[id$='_edit']")
$('element[id$=txtTitle]')
没有必要严格地引用要匹配的文本片段
Try
$("element[id$='txtTitle']");
编辑:4秒晚:P