如何使用jquery查找服务器控件



如何使用jquery查找服务器控件如

$(".tab1").find("<%=lblTab1Heading.ClientID%>"); throws exception thrown & not caught

您错过了id的#

              // here
$(".tab1").find("#<%=lblTab1Heading.ClientID%>");

如果由于某种原因它不能与模板解析器一起工作,您可以使用$=选择器,如:

$(".tab1").find("[id$=lblTab1Heading]");
jQuery API

  • $=(以结尾)
  • * =(包含)

尝试:

var MyControl = $("#<%=lblTab1Heading.ClientID%>");

因为它有一个ID,你可以简单地选择它的ID这是通过哈希完成的:

$('#ElementID')

选择器中需要一个#符号。试着

$(".tab1").find("#<%=lblTab1Heading.ClientID%>");

虽然我回答得太晚了,但我想这段代码也会帮助观众发现很难从JQuery中获得服务器控件ID

function GetClientID(id, context) {
   var el = $("#" + id, context);
   if (el.length < 1)
   el = $("[id$=_" + id + "]", context);
   return el;
}

以及如何命名

var clientId = GetClientID("serverControlId").attr("id");
var serverControl = document.getElementById(clientId);

最新更新