2015-05-11  582 views 评论

ASP.NET中套用母版页后.NET控件的ID值重置问题在javascript中获取的方法

如在Default.aspx中的TextBox的ID为 txtname(Default.aspx套用了母版页),则生成后的ID为ContentPlaceHolder1_txtname。
在这种情况下如果使用js脚本获取该ID的内容则会出现找不到对象问题。
如:

[code lang="js"]
<script type="text/javascript">
function checkform()
{
var name=document.getElementById("txtname").value;
return fales;
}
</script>
[/code]

解决方法:
在后台我们可以发现txtname这一个ID有一个ClientID的属性,这个就是客户端生成ID的值,那么在js脚本应该这样写:

[code lang="js"]
<div><script type="text/javascript">
function checkform()
{
var name=document.getElementById('<%=txtname.ClientID%>').value;
return fales;
}
</script></div>
[/code]

给我留言

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: