2008 2008年 09月 20日
问题陈述:
我跑进这是一个有关的XSL文本域的问题。 在简单的话,问题出现了,当你有一个空白<TEXTAREA>标记,然后将其折叠<textarea />。
也就是说,如果你有像您的XSL和XML数据textarea的值以下,返回什么...
<textarea name='description'> <xsl:value-of select="DESCRIPTION"/> </ TEXTAREA>
由于浏览器不认识到这一点,这将导致其他形式的HTML文本区域运行。
可能解决方案:
在XSL中添加非破空间后的XSL():价值tag.BEWARE,要照顾这个额外的空间,在这一领域的客户端验证,您添加。
<textarea name='description'> <xsl:value-of select="DESCRIPTION"/> </ TEXTAREA>
或
<xsl:value-of select="concat (DESCRIPTION,'')"/>
或
插入1 <xsl:value-of select="@unknown" />标签指向一个未知的属性。 这将强制PHP XSLT分析器生成一个文本区域的开幕和闭幕的标签,即使它有什么之间。
或
插入<xsl:text>领域,包含空间,强制关闭标签。
然而,虽然上述方案似乎来解决这个问题,我仍然不相信他们是正确的和最佳的方式来解决它。 如果有任何其他更好的方式解决这个怪癖,请让我们知道。
张贴在XSL中没有评论 |标签: XSL怪癖
2008 2008年 8月 4
我有这个strage问题,同时创造一个XSL的今天。 看着整个净的答案,但couldnt找到任何.... 其实我猜! DINT我知道我的问题是什么,所以我看的呢?
无论如何! 以防万一你有这同样的问题也莫名其妙的力量,你成功地降落在此页的权力......你会感谢我万吨......如果你不小心降落此页面上的一些奇怪的命运和你刚好是一个XSL开发, 会尽此注意现在,未来的事业,如果有一天,你面对这个问题,那么该部队可能不会与你同在。
问题陈述:
我有这样的XML,其中有两个节点与多个项目中,这两个节点之间的项目有一一对应。 在下面的例子中,每个在节点<array项目name="PLAYURL" />相关(相应的位置)节点<array的一个项目name="SITENAME"
<?xml version="1.0" encoding="utf-8"?>
<myplaylists>
<playlist>
<title>Best of Rest </title>
<array name="SITENAME">
<str>www.musicindiaonline.com</str>
<str>www.dhingana.com</str>
<str>www.raaga.com</str>
<str>www.smashits.com</str>
<str>www.desimusic.com</str>
<str>www.musicplug.in</str>
</array>
<array name="PLAYURL">
<str>http://www.musicindiaonline.com/123/</str>
<str>http://www.dhingana.com/play/123</str>
<str>http://www.raaga.com/123</str>
<str>http://ww.smashits.com/123</str>
<str>http://www.desimusic.com/123</str>
<str>http://www.musicplug.in/123</str>
</array>
</playlist>
</myplaylists>
现在,我有一个循环,我通过<array name="SITENAME">循环,我想以获得在<array name="PLAYURL">相关项目(在相应的位置),
你会normaly尝试做的是...
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
play from : <a href="{../../array[@name='PLAY']/str[position()]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
对不起!! 这不会工作......啊!! Surpised ...
现在,你可能会想尝试一下,像这样...
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos"> <xsl:value-of select="position()"/></xsl:variable>
play from : <a href="{../../array[@name='PLAY']/str[$pos]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
并再次惯常的工作......现在,你抓你的头,试图联系大家,你认为谁知道一些的XSL,可能是有帮助......你尽一切其他的选项,它仍然不会工作嘛! 那是什么发生在我ATLEAST ...
回复DONT绝望!! 试试这个
<xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos-int" select="position()" />
play from : <a href="{../../array[@name='PLAY']/str[$ <xsl:for-each select="myplaylists/playlist/array[@name='SITENAME']/str">
<xsl:variable name="pos-int" select="position()" />
play from : <a href="{../../array[@name='PLAY']/str[$ pos-int ]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
]}"/> <xsl:value-of select="." /></a>
</xsl:for-each>
不要问我为什么工作。 因为我没有权利的原因......如果你这样做! 请不要删除评论。 这可能是非常有用的。 还可以! 如果你有更好的这篇文章的标题,请给我一条线 
没有评论 |标签: XSL , XSL怪癖 , XSLT |张贴在XSL中