Every day is wonderful

分享与创新 并大胆的去尝试新鲜事物。。。。

ASP.NET中动态更新网站标题!

一:
  
ASP.NET为我们提供了一个控件类:System.Web.UI.HtmlControls.HtmlGenericControl。它可以实现HTML的元素的一个实例,比如在.cs代码中控制aspx中的

元素(注意,它不是)。我们知道,页面标题是被包含在中的,而也是一个HTML的元素,所以,我们就可以利用System.Web.UI.HtmlControls.HtmlGenericControl来控制<TITLE>了。</coolcode></p> <p><coolcode>  ASP.NET中,如果想在.cs中控制aspx的一个元素(不论这个元素是Web控件还是HTML控件),那么这个元素的runat属性必须设置成server,也就是说,只有元素的runat属性设置成server后,在.cs中才可以控制这个元素(当然,这个元素必须设置id的)。</coolcode><br /><span id="more-357"></span><br />  <br /><coolcode>现在我们着手试试,在aspx文件的HTML代码中,更改<TITLE>元素为:</coolcode><br /><coolcode><TITLE runat="server" id="DMZ_Title">东门子网站管理系统 Beta 007????默认首页”

  注意一定要设置runat=”server”和id(id很重要,并且注意大小写)。这里的Default Title是默认的标题,你不改标题时,就显示Default Title.

  转到.cs文件,声明一个变量titleControl,类型为
System.Web.UI.HtmlControls.HtmlGenericControl:

    
[code]protected System.Web.UI.HtmlControls.HtmlGenericControl titleControl;

  这样,titleControl就是了。要改变标题就可以在.cs方法中(比如:Page_Load)加入:</coolcode></p> <p>    <br /><coolcode>DMZ_Title.InnerText=“东门子网站管理系统 Beta 007????首页”;</coolcode></p> <p><coolcode>  其实对于System.Web.UI.HtmlControls.HtmlGenericControl控件可以作为所有的HTML控件在服务器端的表现,也就是说只要在后台代码(.aspx.cs/.aspx.vb)中声明一个与前端的HTML控件Id相同的System.Web.UI.HtmlControls.HtmlGenericControl控件对象就可以,并要注意前端的HTML控件的属性中要加上一句runat=”server”,要不然后,后台代码是不会对前端HTML控件执行操作的。</p> <p>  也可以<title>之间加入Literal控件,效果一样!

二:
        .aspx文件中加上
<<asp:Literal ID="DMZ_Title" Runat="server" /></asp:Literal>
在aspx.cs中赋值        
DMZ_Title.Text = “东门子网站管理系统 Beta 007????首页”;

PS:我更倾向于后者!应为它方便!
郁闷 敏感的字符串会让日志看不了!
就跟那天的页面刷新一样! 找了半天! 郁闷! 过滤不严啊!

点赞

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注