以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  [分享] select="text", select="/*/*/text", select="//text"大不一样  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=67737)


--  作者:xml-linguist
--  发布时间:9/28/2008 12:29:00 PM

--  [分享] select="text", select="/*/*/text", select="//text"大不一样

不知道大家最初接触这些东西会不会像我一样一知半解.

我最初以为<xsl:value-of select="text"/>, <xsl:value-of select="/*/*/text"/>, <xsl:value-of select="//text"/>取的值都是text,没有差别.

实际上,这三个text值差别很大:<xsl:value-of select="text"/>只取当前节点下的text值; <xsl:value-of select="/*/*/text"/>取所有含有两个祖元素的text的值,即文档中所有属于第三层的text的值;而<xsl:value-of select="//text"/>所取的值包含文档中所有的text值.

以我的理解,在我这个程度上应用xsl的初学者,大多数所需要的值仅仅是当前节点下的某个元素的值,应该是<xsl:value-of select="text"/>.至于<xsl:value-of select="/*/*/text"/>, <xsl:value-of select="//text"/>, 除了做完整的一类数据的分析之外,对于我这个程度的人来说,基本用不着.

越学越觉得差远了,不学就根本不知道自己在哪里!


--  作者:hexun831012
--  发布时间:9/30/2008 11:28:00 PM

--  
以下是引用xml-linguist在2008-9-28 12:29:00的发言:
不知道大家最初接触这些东西会不会像我一样一知半解.

我最初以为<xsl:value-of select="text"/>, <xsl:value-of select="/*/*/text"/>, <xsl:value-of select="//text"/>取的值都是text,没有差别.

实际上,这三个text值差别很大:<xsl:value-of select="text"/>只取当前节点下的text值; <xsl:value-of select="/*/*/text"/>取所有含有两个祖元素的text的值,即文档中所有属于第三层的text的值;而<xsl:value-of select="//text"/>所取的值包含文档中所有的text值.

以我的理解,在我这个程度上应用xsl的初学者,大多数所需要的值仅仅是当前节点下的某个元素的值,应该是<xsl:value-of select="text"/>.至于<xsl:value-of select="/*/*/text"/>, <xsl:value-of select="//text"/>, 除了做完整的一类数据的分析之外,对于我这个程度的人来说,基本用不着.

越学越觉得差远了,不学就根本不知道自己在哪里!



没什么好说的,鼓励一下
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
42.969ms