我将文件countries.xpl修改为重定向并从xml加载我公司的数据。
我需要在dinamyc数据下拉菜单中显示很多项目。
我修改了这行中的countries.xpl:
<xsl:copy-of select="/countries/country[starts-with(lower-case(name),lower-case($name))][10 >= position()]"/>
如果我将值“10”更新为数字小于10,例如“8”,这可行,我只看到dinamyc数据中的8个项目下拉。
但是如果我将这个值“10”修改为10个例子“11”以上的数字,我只能看到dinamyc数据中的10个项目,而不是11个或更多。
我的问题是这样的: ¿有可能在动态数据下拉列表中显示超过10个项目?
¿它正确修改了行<xsl:copy-of select="/countries...
的编号?或者我需要修改xpl中的其他行?
我将xpl中的代码附加到了:
`<!--
Copyright (C) 2004 Orbeon, Inc.
This program is free software; you can redistribute it and/or modify it under the terms of the
GNU Lesser General Public License as published by the Free Software Foundation; either version
2.1 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details.
The full text of the license is available at http://www.gnu.org/copyleft/lesser.html
-->
<p:config xmlns:p="http://www.orbeon.com/oxf/pipeline"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:oxf="http://www.orbeon.com/oxf/processors"
xmlns:xh="http://www.w3.org/1999/xhtml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<p:param name="instance" type="input"/>
<p:param name="data" type="output"/>
<p:processor name="oxf:request">
<p:input name="config">
<config>
<include>/request/parameters/parameter[name = 'country-name']</include>
<include>/request/parameters/parameter[name = 'all']</include>
</config>
</p:input>
<p:output name="data" id="request"/>
</p:processor>
<p:processor name="oxf:xslt">
<p:input name="data" href="countries.xml"/>
<p:input name="request" href="#request"/>
<p:input name="instance" href="#instance"/>
<p:input name="config">
<countries xsl:version="2.0">
<xsl:variable
name="name"
select="if (doc('input:instance')/*/@xsi:nil = 'true') (: No instance was posted to this service :)
then doc('input:request')/request/parameters/parameter[name = 'country-name']/value (: Try getting request parameter :)
else doc('input:instance')/instance/country-name (: Use name in posted instance :)"/>
<xsl:variable
name="all"
select="doc('input:request')/request/parameters/parameter[name = 'all']/value = 'true'"/>
<xsl:choose>
<!-- If no name is specified, just take the first 10 countries unless all=true -->
<xsl:when test="empty($name)">
<xsl:copy-of select="/countries/country[$all or position() le 10]"/>
</xsl:when>
<!-- Get first 10 countries that start with provided name -->
<xsl:otherwise>
<xsl:copy-of select="/countries/country[starts-with(lower-case(name), lower-case($name))][11 >= position()]"/>
</xsl:otherwise>
</xsl:choose>
</countries>
</p:input>
<p:output name="data" ref="data"/>
</p:processor>
</p:config>
请帮助我。 非常感谢 此致
答案 0 :(得分:0)
您可以在max-results-displayed
上添加<fr:autocomplete>
属性。有关max-results-displayed
的示例和更多信息,请参阅自动填充文档的Maximum number of displayed results部分。