web用户控件中的JavaScript

今天遇到一个问题,将一个页面中的某项功能做成web用户控件,也就是.ascx文件后,JavaScript不能访问ascx中的某个控件,搞了好久才解决,原因是生成网站后在web用户控件中的控件id都被自动套上了前缀,以至于JavaScript访问不到原来的id,所以只需先在HTML源文件中找出改变后的id,再修改JavaScript代码即可。

 


<script language=javascript type="text/javascript">
    
function checkform()
    {
        
if ( document.all.ctl00_ContentPlaceHolder2_Login1_logname.value.match(/^\s*$/))
        {
            alert(
"请输入用户名!");
            
        }
        
if ( document.all.ctl00_ContentPlaceHolder2_Login1_psword.value.match(/^\s*$/))
        {
            alert(
"请输入密码!");
            document.all.ctl00_ContentPlaceHolder2_Login1_psword.focus();
        }
    }
</script>

这一串常常的id前缀就是VS2005自己加上去的ctl00_ContentPlaceHolder2_Login1_

Login是这个.ascx的名字,ContentPlaceHolder是母版编辑区,最前面的那个ctl00不知是啥东西。

你可能感兴趣的:(JavaScript)