【发布时间】:2011-12-25 22:13:37
【问题描述】:
我正在进行客户端转换。我想使用 XSLT 从 XML 中获取一个值并将其作为默认文本放在 textarea 中,但它不起作用。 我有一个名为 AddNewBlog.aspx 的文件,它实际上是一个 XML 文件。它包括一个名为 AddNewBlogXSL.aspx 的文件,该文件为客户端转换提供 XSL。
在 AddNewBlogXSL.aspx 我有
<label for="Oohrl" id="OohrlLabel">Oohrl:</label>
<input name="ctl00$RightColumn$Oohrl"
type="text" value="{/oohru/form/oohrl}"
id="Oohrl" class="textEntry"/>
<br/>
<div id="validateOohrl"/>
<label for="Description" id="DescriptionLabel">Description:</label>
<textarea name="ctl00$RightColumn$Description"
rows="4" cols="50" id="Description">
{/oohru/form/desc}
</textarea>
如果有帮助,这里是 XSL 文件的标题信息
<xsl:stylesheet version="1.0"><xsl:strip-space elements="*"/><!--
Type Num
1=want
2=have
3=sell
--><xsl:output method="html" indent="yes" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"/><xsl:template match="/">
我的 XML 有这个
<oohru>
<form>
<desc>asdf</desc>
<title>a</title>
<oohrl>jordie</oohrl>
</form>
</oohru>
它的标题是
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="AddNewBlogXSL.aspx"?>
oohrl 最终填充为正确的值,但对于 desc,我只得到“{/oohru/form/desc}”
结构似乎只是文本区域的问题
更新:似乎只是asp.net文本区域控件的问题...
<asp:TextBox id="Description" TextMode="MultiLine"
Columns="50" Rows="4" runat="server"
ClientIDMode="Static"><xsl:value-of select="/oohru/form/desc" />
</asp:TextBox>
输入字面值
<xsl:value-of select="/oohru/form/desc" />
进入页面上的框
而
<textarea rows="5" cols="5"><xsl:value-of select="/oohru/form/desc" /></textarea>
将实际正确的值放入文本区域......
【问题讨论】:
-
错误的不是你的代码,而是你运行它的方式(或不运行它)。你什么都没告诉我们。
-
希望这有助于澄清我运行它的方式。将该文件包含在 XSL 表中的客户端转换