我有这个 XML:
<EditRemote>
<RemoteVendorServer>
<FriendlyName><![CDATA[blabla]]></FriendlyName>
<Description></Description>
<CommunicationMethod>
<GetExecutors>
<Executor queryString=".*"/>
<Executor queryString="[CX].*"/>
<Executor queryString="[^CX].*"/>
</GetExecutors>
<RemoteAccess/>
</CommunicationMethod>
</RemoteVendorServer>
</EditRemote>
我想在“Executor”标签上做应用模板,并将所有 queryStrings 值收集到动态创建的具有动态 ID 的隐藏输入中。所以我的代码如下所示:
<script type="text/javascript">
.
.
var queryCounter = 0;
var c_UNDERSCORE_QUERY_STRING = "_queryString";
.
</script>
.
.
<xsl:apply-templates select="EditRemote/RemoteVendorServer/CommunicationMethod/GetExecutors/Executor" mode="tcp"/>
.
.
// at the bottom of the xsl file I create the template:
<xsl:template match="Executor" mode="tcp">
<input value="{@queryString}">
<xsl:attribute name="id">
<script type="text/javascript">
queryCounter + c_UNDERSCORE_QUERY_STRING+"tcp";
</script>
</xsl:attribute>
<xsl:attribute name="name">
<script type="text/javascript">
queryCounter + c_UNDERSCORE_QUERY_STRING+"tcp";
</script>
</xsl:attribute>
</input>
<script type="text/javascript">
queryCounter++;
</script>
</xsl:template>
我回到服务器的只是最后一个没有键名的查询。它以某种方式进入了一个名为 Description(textarea element) 的不同输入,该输入在上面的应用模板之前用 xsl 编写:服务器输入:...,Description=[^CX].*,... 我什至看到了在我的 UI 中,当页面加载时,查询位于描述文本区域内。我的代码中似乎有什么问题?