.net教程:Asp.net 中ClientID的用法探讨
关于ClientID的使用我遇到一下问题:
获取由 ASP.NET 生成的服务器控件标识符。
问题一: 用户控件的页面JavaScript中需要使用Asp.net的控件ID,出现不一致。
问题二:母版页的子页面JavaScript中需要使用Asp.net的控件ID,出现不一致。
解决办法:
document.getElementById("<%=TextBox1.ClientID%>").value="1234567";
此代码可以在客户端完成对服务器端控件的访问,由于ASP.NET会为把服务器端控件在客户端的呈现生成不同的名称,所以此功能比较有用获取。
注意采用此解决办法的前提: Asp.net的控件为静态控件(通过工具添加的控件)
问题三: 动态创建控件的ClientID的获得存在:不能在页面中采用"<%=TextBox1.ClientID%>".方法获得(不能的方法,因为控件是动态创建的);也不能在页面脚本中采用TextBox1.ClientID的方法获得(获得的ID是不正确的)。
解决办法:
(CitySpecProductScheduledControl.ascx.cs代码片段 )
TextBox text = new TextBox();
text.MaxLength = 12;
text.Columns = 12;
text.Text = DateTime.Now.ToShortDateString();
text.ID = "dateId";
text.Attributes.Add("onclick", "calendar()");
text.Attributes.Add("class", "text");
HtmlImage dateimg = new HtmlImage();
dateimg.Src = "../CommonImages/cal.gif";
string js = string.Format("calendar({0}_{1})",this.ClientID, text.ClientID); //关键代码,按照客户端ClientID的产生规则手工生成。
dateimg.
相关文档:
1、使用值类型的ToString方法
在连接字符串时,经常使用"+"号直接将数字添加到字符串中。这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引用类型才可以添加到字符串中。但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值 ......
DataGridView 控件DataGridView 控件提供用来显示数据的可自定义表。使用 DataGridView 类,可以自定义单元格、行、列和边框。
注意
DataGridView 控件提供 DataGrid 控件所不具备的许多基本和高级功能。有关更多信息,请参见 Windows 窗体 DataGridView 控件和
DataGrid 控件之间的区别
常用属性:
DefaultCellStyle、 ......
一、页输出缓存
1.设置 ASP.NET
页缓存的两种方式
1.1
以声明方式设置 ASP.NET 页的缓存
以声明方式设置 ASP.NET
页的缓存的方法是在页中使用 @ OutputCache 指令,它的常用属性如下:
程序代码
<%@ OutputCache Duration="" VaryByParam=""
VaryByControl="" VaryByHeader ......
许多程序员在做业务开发时往往会在服务器端做用户信息的验证,有没有考虑过用jquery的ajax方法来验证登陆呢?且效果比在服务器端写代码来验证好的多,页面无刷新即可实现实现登陆验证,代码也简单。
现在下面贴出来的是很简单的用jquery的ajax方法来验证登陆的代码,适合刚接触jquery的朋友学习。
前台页面代码:
<he ......
原来用jQuery的ajax方式调用asp.net页面基本都是调用单个页面,由调用页面Response内容,而现在采用asp.net ajax后,我们则可以更完美的使用jQuery和asp.net结合了,代码如下:
<asp:ScriptManager ID="ScriptManager1" runat="server" >
<Scripts>
<asp:ScriptReference Path="http ......