-
xsl学习
xsl:template的语法是:
<xsl:template match = pattern
name = pname
priority = number
mode = pname>
<!-- 执行内容 -->
</xsl:template>xsl:template的作用是定义一个新模板。属性中name,priority,和mode用来区别匹配同一节点的不同模板。它们不是常用的属性。match属性则控制模板的匹配模式(pattern),匹配模式是用来定位XML源文档中哪一个节点被模板处理。一个模板匹配一个节点。我们用一个例子来帮助理解:
假设我们要处理一个包含章节和段落文档。我们用para元素定义段落,用chapter元素定义章节。我们来看看match属性可能的值。下面的语句写法说明模板匹配所有的para元素
<xsl:template match="para">
</xsl:template>
下面的语句写法说明模板匹配所有的para元素和所有的chapter元素:
<xsl:template match="(chapter|para)">
</xsl:template>
下面的语句写法说明模板匹配所有的父节点为chapter元素的para元素:
<xsl:template match="chapter//para">
</xsl:template>
下面的语句写法说明模板匹配根节点:
<xsl:template match="/">
</xsl:template>
apply-templates语法:
<xsl:apply-templates
select = node set-expression
mode = qname>
</xsl:apply-templates>
xsl:apply-templates用来执行那一个节点被模板具体处理。你可以将它理解为程序中调用子函数。select属性用来定义确切的节点名称。xsl:apply-templates总是包含在xsl:template元素中,象这样:
<xsl:template match="/">
<xsl:apply-templates select="para"/>
</xsl:template>
这段代码说明摸板匹配整个文档(根节点),具体执行时处理根节点下所有para元素。
<xsl:template match="para">
<xsl:apply-templates/>
</xsl:template>
而这一段代码则表示摸板匹配para节点,所有para下的子元素都将被处理xsl:value-of 用来将源文档中元素的文本值写到输出文档中。xsl:value-of 语法说明需要输出一个节点的值,比如select="name"则定义需要被输出的元素为name。看这个过程是不是和数据库里查询一个人的名字很象?当然,xsl:value-of查询还有更多,更复杂的语法。
同样功能的还有xsl:copy-of,用法一样.
xsl:for-each 语法允许你循环处理被选择的节点
xsl:if 类似普通程序语言的if条件语句,允许设定节点满足某个条件时,被模板处理。
xsl:if的语法格式为:
<xsl:if test=布尔表达式>
template body
</xsl:if>
例:
<xsl:template match="person">
<xsl:if test="@name">
<p><xsl:value-of select="@name"/></p>
</xsl:if>
</xsl:template>
这段代码的意思是检测person节点下所有的元素,如果发现有<name>元素,则将<name>元素的值输出。其中@符号是通配符,表示节点下所有的元素。
xsl:choose, xsl:when 和 xsl:otherwise
xsl:if语法没有else的属性。如果要进行多项选择,那么就要使用xsl:choose / xsl:when / xsl:otherwise系列流程控制语法了。具体的使用请看下面的XSL文件例子:
<xsl:template match="person">
<xsl:choose>
<xsl:when test="@name = 'yan'">
<xsl:value-of select="@name"/>
</xsl:when>
<xsl:when test="@name">
<xsl:value-of select="@name"/>
</xsl:when>
<xsl:otherwise>
No name </xsl:otherwise>
<xsl:choose>
</xsl:template>
首先在person节点下寻找<name>属性值为yan的元素,如果找到,将yan输出;如果没有发现值为yan的<name>元素,则将所有的<name>元素的值都输出;如果没有发现任何<name>元素,则显示"No
name "。
xsl:sort
在XSLT中可以对XML源文档的元素进行重新排序,排序的语法就是xsl:sort。例:将文档元素按name排序。
<xsl:template match="person">
<xsl:apply-templates select="PERSON">
<xsl:sort select="@name"/>
</xsl:apply-templates>
</xsl:template> -
鱼和水的对白〔转〕--经典
-
结婚的意义〔转〕







-
跨页面数据发送
ASP.NET 2.0可以使用PreviusPage对象执行跨ASP.NET程序的Web窗体回发。
比如要把botton1CS.aspx页里TextBox1里的文本数据发送到botton2CS.aspx页面进行处理:
在botton1CS.aspx拉一个TextBox1控件,id="TextBox1";然后拉一个botton控件botton1,Button1的PostBackUrl="~/botton2CS.aspx";
在botton2CS.aspx拉一个Label1, Label1.Text += "您输入的值:" + ((TextBox)PreviousPage.FindControl("TextBox1")).Text;
-
meta标签
meta标签的常见功能:
1、帮助主页被各大搜索引擎登录
2、定义页面的使用语言
3、自动刷新并指向新的页面
4、实现网页转换时的动画效果
5、网页定级评价
6、控制页面缓冲
7、控制网页显示的窗口。
meta是用来在HTML文档中模拟HTTP协议的响应头报文。
meta 的属性有两种:name和http-equiv。
name属性主要用于描述网页,对应于content(网页内容),以便于搜索引擎机器人查找、分类(目前几乎所有的搜索引擎都使用网上机器人自动查找meta值来给网页分类)。这其中最重要的是description(站点在搜索引擎上的描述)和keywords(分类关键词),所以应该给每页加一个meta值。name 属性
1、<meta name="Generator" contect="editplus">用以说明生成工具(如Microsoft FrontPage 4.0)等;
2、<meta name="KEYWords" contect="cnbruce,cnrose">向搜索引擎说明你的网页的关键词;
3、<meta name="Description" contect="cnbruce's blog">告诉搜索引擎你的站点的主要内容;
4、<meta name="Author" contect="cnbruce">告诉搜索引擎你的站点的制作的作者;
5、<meta name="Robots" contect="all|none|index|noindex|follow|nofollow">
其中的属性说明如下:
设定为all:文件将被检索,且页面上的链接可以被查询;
设定为none:文件将不被检索,且页面上的链接不可以被查询;
设定为index:文件将被检索;
设定为follow:页面上的链接可以被查询;
设定为noindex:文件将不被检索,但页面上的链接可以被查询;
设定为nofollow:文件将不被检索,页面上的链接可以被查询。http-equiv属性
1、<meta http-equiv="Content-Type" contect="text/html";charset=gb_2312-80">和 <meta http-equiv="Content-Language" contect="zh-CN">用以说明主页制作所使用的文字以及语言;又如英文是ISO-8859-1字符集,还有BIG5、utf-8、shift-Jis、Euc、Koi8-2等字符集;
2、<meta http-equiv="Refresh" content="n; url=http://yourlink"> 定时让网页在指定的时间n秒内,跳转到页面http;//yourlink;
3、<meta http-equiv="Expires" contect="Mon,12 May 2001 00:20:00 GMT">可以用于设定网页的到期时间,一旦过期则必须到服务器上重新调用。需要注意的是必须使用GMT时间格式;
4、<meta http-equiv="Pragma" contect="no-cache">是用于设定禁止浏览器从本地机的缓存中调阅页面内容,设定后一旦离开网页就无法从Cache中再调出;
5、<meta http-equiv="set-cookie" contect="Mon,12 May 2004 00:20:00 GMT">cookie设定,如果网页过期,存盘的cookie将被删除。需要注意的也是必须使用GMT时间格式;
6、<meta http-equiv="Pics-label" contect="">网页等级评定,在IE的internet选项中有一项内容设置,可以防止浏览一些受限制的网站,而网站的限制级别就是通过meta属性来设置的;
7、<meta http-equiv="windows-Target" contect="_top">强制页面在当前窗口中以独立页面显示,可以防止自己的网页被别人当作一个frame页调用;
8、<meta http-equiv="Page-Enter" contect="revealTrans(duration=10,transtion= 50)">和<meta http-equiv="Page-Exit" contect="revealTrans(duration=20,transtion=6)">设定进入和离开页面时的特殊效果,这个功能即FrontPage中的“格式/网页过渡”,不过所加的页面不能够是一个frame页面。Duration的值为网页动态过渡的时间,单位为秒。
Transition是过渡方式,它的值为0到23,分别对应24种过渡方式。如下表:
0 盒状收缩
1 盒状放射
2 圆形收缩
3 圆形放射
4 由下往上
5 由上往下
6 从左至右
7 从右至左
8 垂直百叶窗
9 水平百叶窗
10 水平格状百叶窗
11垂直格状百叶窗
12 随意溶解
13从左右两端向中间展开
14从中间向左右两端展开
15从上下两端向中间展开
16从中间向上下两端展开
17 从右上角向左下角展开
18 从右下角向左上角展开
19 从左上角向右下角展开
20 从左下角向右上角展开
21 水平线状展开
22 垂直线状展开
23 随机产生一种过渡方式









