.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.
相关文档:
【相对路径】
Request.ApplicationPath
/src
Path.GetDirectoryName(HttpContext.Current.Request.RawUrl )
\\src\\Xiaoshe
Context.Request.Path
/src/Xiaoshe/Xiaoshe_New.aspx
Context.Request.CurrentExecutionFilePath
/src/Xiaoshe/Xiaoshe_New.aspx
Context.Request.FilePath
/src/Xiaoshe/Xiaoshe ......
在 ASP.NET 网页中不经过回发而实现客户端回调
在 ASP.NET 网页的默认模型中,用户会与页交互,单击按钮或执行导致回发的一些其他操作。此时将重新创建页及其控件,并在服务器上运行页代码,且新版本的页被呈现到浏览器。但是,在有些情况下,需要从客户端运行服务器代码,而不执行回发。如果页中的客户端脚本维护一些状态 ......
原来用jQuery的ajax方式调用asp.net页面基本都是调用单个页面,由调用页面Response内容,而现在采用asp.net ajax后,我们则可以更完美的使用jQuery和asp.net结合了,代码如下:
<asp:ScriptManager ID="ScriptManager1" runat="server" >
<Scripts>
<asp:ScriptReference Path="http ......
ASP.NET AJAX推出也有一段时间了,当初宣称的AJAX客户端脚本可以脱离服务器端脚本,在诸如html,php等平台上使用,但像微软不少其他产品一样,这个肥大的,性能低下,毫无艺术感的框架正在被大家所诟病。越来越多的人想要脱离这个客户端脚本,脱离AJAX提供的客户端控件,用更精炼更高效的框架来调用服务器端方法。很显然,目 ......
ASP.NET下载——word,txt,图片方法
本文主要介绍ASP.NET下载诸如word,txt,图片等的方法。
try
{
FullFileName = Server.MapPath(FileName); //FileName--要下载的文件名
FileInfo DownloadFile= new FileInfo(FullFileName);
if(Down ......