用JS验证ASP.NET2.0控件表单的方法(visual2005)

问题的提出: 

问题1. 
在.NET控件的表单中,控件的id都被加上一长串的字符比如:服务器端控件为uname的TextBox控件 
在服务器端代码为 
在客户端生成的HTML代码为 
如何才能获得asp控件在前台生成的控件名称? 

问题2. 
而在服务器端页面的提交button,这样写却不能通过编译,提示错误checkform不是“ASP.theme_blueidea_skins_addnews_ascx”的成员 
 
但是却可以用onmouseover事件 
 
可能onclick必须使用.NET的函数吧 
要想用js来控制表单的提交和验证一时不知道怎么搞? 

问题的解决: 


问题1的解决: 
对于服务器端控件 
我们可以在js中这样调用document.getElementById('<%= uname.ClientID %>').value = "jaja"; 

问题2的解决: 
在form标签中添加js事件 
 
不需要给button加事件 
这样2个问题就完满的解决了,困扰了我1个多小时,哎基本功阿 

核心代码如下: 

服务器端: 

 
 
 
 
 
 
 
 
function checkform() 

document.getElementById('<%= uname.ClientID %>').value = "jaja"; 
// document.all.<%= uname.UniqueID %>.value = "jaja"; //两种语句都可以实现 

 
 


客户端生成代码: 


 
 
 
 
 
 
 
function checkform() 

document.getElementById('Content_ctl00_Main_ctl00_uname').value = "jaja"; 
// document.all.Content$ctl00$Main$ctl00$uname.value = "jaja"; //两种语句都可以实现 
return false; 

 
 


因为js函数中return false了所以表单不会提交,如果把它改成true 或者去掉,表单就可以提交了  

你可能感兴趣的:(编程技巧与代码,asp.net,textbox,button,asp,服务器,div)