我在ASP.NET上使用母版页,我试图使用Javascript函数来处理' onkeypress'许多TextBox的事件,但是当我尝试获取控件时,我收到以下错误:
" NullReferenceException:对象引用未设置为对象的实例"
<script type="text/javascript">
function txtValidation(sender)
{
var txt = document.getElementById('<%=Page.Master.FindControl("MainContent").FindControl("' + sender + '").ClientID %>');
txt.Value = "Ok"
}
</script>
答案 0 :(得分:0)
我不太确定你要做什么。以下是一些可能会有所帮助的事情:
&#34;发件人&#34;传递的参数已经是对dom对象的引用。如果您想要客户端,sender.Value = "Ok";
将起作用。
查看您的代码......您是否尝试使用TextBox,并且当用户按下某个键时,立即将文本更改为&#34; Ok&#34;?然后试试这个:
function txtValidation(sender)
{
sender.Value = "Ok";
}
作为可能相关的奖励提示,如果您的代码位于外部.js文件中,则不会被您的asp.net页面处理程序解析,并且您的<%= .. %>
块不会被取消工作。如果您在属性选择器中使用jQuery,则可以轻松解决这个问题:
$("[id$='foo']")
这将匹配所有具有foo
的asp.net ID的元素,因为生成的客户端ID将类似于$Namingcontainer1$Naming2$Naming3$foo