[转]ASP.NET页面HEAD区动态设置全攻略
方法1:asp能做到的,asp.net当然可以做到,只要你把整个页面都用Response.Write()写出来,没有什么不能自定义的,当然也可以"<%=某个成员%>"。但很明显,这样发挥不了.net的特点。
方法2:利用asp.net的特有属性:runat="server",给title设置一个id,然后让它成为服务器变量,那就可以设置其文本了。但这样出来的html里边也会带有id,看着实在不爽。
后台:
protected System.Web.UI.HtmlControls.HtmlGenericControl titleControl;
titleControl.InnerText="我把标题给改了!";
方法3:利用Literal控件,前台:
<HEAD>
<asp:Literal ID="lt_title" Runat="server" />
<asp:Literal ID="lt_keywords" Runat="server" />
<asp:Literal ID="lt_descri" Runat="server" />
</HEAD>
后台:
private void Page_Load(object sender, System.EventArgs e)
{
lt_title.Text = "<title>标题</title>";
lt_keywords.Text = "<meta name=\"keywords\" content=\"关键字\">";
lt_descri.Text = "<meta name=\"description\" content=\"描述\">";
}
这样就基本达到完美了。
更进一步,我的页面用了不少用户控件,并且这些用户控件有层次,而决定页面title的,可能是某个用户控件中的子用户控件来决定的,而且用户控件的嵌套层次不固定。 那要怎么来动态设置呢?
首页,做一个用户控件的基类,并且给它增加1个public方法:
public void SetTitle(string title)
{
SetLiteralText("lt_title", string.Format("<title>{0}</title>", title));
}再增加一个private方法:
private void SetLiteralText(string id, string text)
{
Literal lt = null;
Control ctrl = this;
do
{
ctrl = ctrl.Parent;
}while(ctrl != null && ctrl.GetType().FullName != "System.Web.UI.HtmlControls.HtmlForm" );
if(ctrl != null)
{
lt = ctrl.FindControl(id) as Literal;
if(lt != null)
lt.Text = text;
}
}
这样,你的用户控件只需要让它继承自这个基类,然后在你想设置页面的title时调用base.SetTitle("标题"),就简单的完成了任务。对于head区其它标记,原理和设置title一样。
转载于:https://www.cnblogs.com/xinyuxin912/archive/2007/09/16/894986.html
[转]ASP.NET页面HEAD区动态设置全攻略相关推荐
- ubuntu设置全攻略
说明,本文档根据网上的文档修改而成,凡是经过自己实践的都做了修改. 硬盘安装: 将iso文件和wubi.exe(从iso中解压出来的)两个文件放到任意同一目录下,在windows下点击wubi.exe ...
- 网吧的服务器设置全攻略
网吧的服务器设置全攻略 作者: 出处:网吧联盟 ( 60 ) 砖 ( 60 ) 好 评论 ( 1 ) 条 进入论坛 更新时间:2006-03-01 11:37 关 键 词:网吧服务器应用设置 阅 ...
- Win2000服务器设置全攻略电子书
虽然操作系统发展的相当快,但是用Win2000来作为服务器操作系统的人还是不少.看了这本网络上下载的<Win2000服务器设置全攻略>,感觉还算不错,全书共包括四十篇文章,详细的讲述了Wi ...
- asp功放怎么装_汽车音响安装全攻略--功放篇
汽车音响安装全攻略--功放篇 安装功放比安装接收机或扬声器更需要一些技巧,但并不意味着不可操作.事先了解注意事项,可以减少发生故障的机率. 安 装 第一步:作好准备工作 功放与接收机间必须保持至少90 ...
- 小技巧大用处:微信小程序状态栏设置全攻略
前言 我们在使用微信小程序的时候,经常会发现小程序的状态栏与我们手机的状态栏不太一致.有时候状态栏的颜色与我们小程序的主题色不相符,有时候状态栏的文字内容也不太符合我们的需求.为了解决这些问题,我们需 ...
- SQL Server 2005 Express 远程连接 客户端 远程访问 设置 全攻略 (适用 SQL Server 2005 其他版本)
SQL Server 2005 Express 是微软提供的数据库的低端解决方案, 可免费任意随产品分发, 可以在XP等非专业服务器系统下安装, 还可以远程访问, 对于小型数据应用程序已足够满足数据使 ...
- 每步动态解析设置全攻略
Meibu二级域名及其动态域名解析完全免费使用!是最稳定.快速的服务. 可建立自己的网站. 每步动态IP域名解析系统支持建立WEB服务.FTP服务.Email服务.游戏服务器.视频服务.网上电台. 数 ...
- 服务器安全设置全攻略
一.Windows Server2003的安装 1.安装系统最少两需要个分区,分区格式都采用NTFS格式 2.在断开网络的情况安装好2003系统 3.安装IIS,仅安装必要的 IIS 组件(禁用不需要 ...
- Win2003 Server手动设置全攻略
最近自己正式安装了Windows 2003 server,感觉很多地方要手动设置后才好用,以下将记录我的DIY的心得,希望对大家有点用处! 1.禁用Internet Explorer Enhanced ...
最新文章
- Decoders对于语义分割的重要性 | CVPR 2019
- 配置发布和禁用复制功能时提示 分发服务器未正确安装。
- 一个诡异的循环:意识何以意识到意识自身?
- 左侧固定右侧自动填充_办公小技巧:解决Excel公式自动填充问题
- LeetCode 375. Guess Number Higher or Lower II
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一
- PCA目标函数的推导
- 自动化特征工程和自动建模在风控场景的应用
- 程序员,为什么如此迷茫?
- 巧合?模仿还是抄袭?水木年华的《秋日恋歌》和Lube 乐队的《Pozovi Menya Tiho Po Imeni》...
- 物理与计算机信息工程学院,泉州师范学院物理与信息工程学院
- 吴恩达深度学习1.2练习_Neural Networks and Deep Learning
- k8s核心技术-Helm(快速部署应用)---K8S_Google工作笔记0046
- EJB3.0学习笔记--SOAP-AXIS--深入Soap引擎
- 智能家居行业的数据传输保护
- Lombok不起作用原因
- 怎么打散铺铜_怎么做绵软香甜的黑米糕,不加酵母,加鸡蛋和一碗黑米粉一搅拌...
- 围观Razavi和Sansen打架——电流并联反馈
- ANC主动降噪的量化描述
- win10开机启动ps1脚本
热门文章
- Incorrect string value: '/xE7/xA8/x8B/xE5/xBA/x8F...' for column 'course' at row 1
- CentOS 6.4 命令行 安装 VMware Tools
- 三层架构 android访问MSSQL数据库 程序 (服务器端)
- Javascript Math.ceil与Math.round与Math.floor区别
- [译]Kinect for Windows SDK开发入门(八):骨骼追踪进阶 上
- Nhibernate代码自动生成工具[转]
- 一个员工的离职成本有多恐怖!
- 领域驱动设计(DDD)前夜:面向对象思想
- 收藏!架构师需要掌握的99条铁律
- Spring Cloud 入门 之 Hystrix 篇(四)