在ascx中使用javascript

本文探讨了在ASP.NET中将.ascx用户控件嵌入到.aspx页面时遇到的问题,特别是关于控件ID自动更改导致JavaScript验证失败的情况,并提供了解决方案。
把ascx放到aspx里。运行。根本不行。查看源码得知.TextBox的ID,前面加上了
<input name="QuickForumLogin1:txtUserName" type="text" id="QuickForumLogin1_txtUserName" style="width:95px;" />
QuickForumLogin为ascx的名称。放到aspx里后自动后面加个1.
这样js无法找到Form的txtUserName。

把js的验证代码改成,,问题解决。通过查看生成的HTML.
None.gif<script language="JavaScript">
None.gif    
<!--
None.gif    
function checkForm(){
None.gif        
if (document.Form1.QuickForumLogin1_txtUserName.value.length == 0) {
None.gif            alert(
"请输入用户名.");
None.gif            document.Form1.QuickForumLogin1_txtUserName.focus();
None.gif            
return false;
None.gif        }    
None.gif
None.gif    return true
None.gif    }
None.gif    
-->
None.gif
</script>
你先把你地控件用ClientID转换一下就可以了。例如
var tempSendTime= document.getElementById('<%=sendTime.ClientID%>');
这样tempSendTime就是你ascx中控间在aspx中的名字了。

转载于:https://www.cnblogs.com/wayne-ivan/archive/2008/03/12/1101749.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值