我在.ascx
页面中有radGrid,我想在其中找到使用$find
的控件,但它会向我返回null。下面是我用来获取对象的代码(用.ascx编写)。
<script type="text/javascript">
$(function () {
var Rates_gridID = $find('<%= gridRates.ClientID %>');
alert(Rates_gridID);
});
</script>
在这里,我在警报中将Rates_gridID
视为空。我注意到有趣的是当我从1.2.6
将jQuery版本更改为1.6.4
时,我得到了Rates_gridID
个对象。我已经google了很多但没有得到任何解决方案。我认为问题出在$(function()
。
答案 0 :(得分:3)
您使用的语法不正确。尝试
$("body").find('<%= gridRates.ClientID %>');
答案 1 :(得分:3)
$ Find与$ .find不同。 第一个是提供由Microsoft AJAX库定义的Sys.Application类的findComponent方法的快捷方式。 而第二个是来自jQuery的API方法,它获取当前匹配元素集中每个元素的后代,由选择器,jQuery对象或元素过滤。
所以,$ Find必须找到Component而不是html DOM。并且必须定义ajax库。
了解更多信息: http://msdn.microsoft.com/en-us/library/vstudio/bb397441(v=vs.100).aspx http://api.jquery.com/find/
答案 2 :(得分:1)
这里$find
是什么。这是不正确的。
像
一样使用它$("body").find('<%= gridRates.ClientID %>');
详情了解
中的find()
描述:获取当前集合中每个元素的后代 匹配的元素,由选择器,jQuery对象或元素
过滤
答案 3 :(得分:-1)
如果&lt;%= gridRates.ClientID%&gt;是你应该像这样使用的唯一ID
var Rates_gridID = $("#<%=gridRates.ClientID%>");
alert(Rates_gridID);