2017-05-16 62 views
0

我修改了文件countries.xpl以从xml重定向并从我的公司加载数据。Orbeon - 显示xpl的动态数据中的超过10个项目

我需要在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中的其他行?

我attacht代码从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> 

帮助我请。 非常感谢 Regards

回答

0

你可以在<fr:autocomplete>上加上max-results-displayed属性。有关max-results-displayed的示例和更多信息,请参阅自动填充文档的Maximum number of displayed results部分。

+0

谢avernet我修改properties.loca.xml并添加行'<属性 为= “XS:整数” 名称= “oxf.xforms.xbl.fr.autocomplete.max-结果显示的” 值=“20”>并修改xpl行位置()]“/>'工作......谢谢:) –

+0

优秀;我很高兴工作,并感谢更新! – avernet

相关问题