Twitter bootstrap getItemValueArray的大值列表编辑操作太慢

Twitter bootstrap getItemValueArray的大值列表编辑操作太慢,twitter-bootstrap,xpages,xpages-ssjs,Twitter Bootstrap,Xpages,Xpages Ssjs,使用此代码从重复控件编辑多值字段。如果值列表不大,正常/快速,但值列表大,则缓慢将数据带到对话框(引导) 此按钮在重复控制中编码 <xp:button value="-" id="submitButtonId2" styleClass = "btn btn-success"> <xp:eventHandler event="onclick" submit="true" refreshMode="partial"

使用此代码从重复控件编辑多值字段。如果值列表不大,正常/快速,但值列表大,则缓慢将数据带到对话框(引导)

此按钮在重复控制中编码

<xp:button value="-" id="submitButtonId2" styleClass = "btn btn-success">                           
    <xp:eventHandler event="onclick" submit="true" refreshMode="partial"
        refreshId="pnlRow" disableValidators="true" id="eventHandler3">
    <xp:this.action><![CDATA[#{javascript:viewScope.index = rowIndex;
 EditRow();}]]></xp:this.action></xp:eventHandler>
        <xp:this.attrs> <xp:attr name="data-toggle" value="modal">
                                                </xp:attr>
                    <xp:attr name="data-target" value="#OrderRow">
                                                </xp:attr>
                                            </xp:this.attrs>
                                        </xp:button>

我建议避免这种模式:

var value = document.getItemValueArray("field")[index];
getComponent("component").setValue(value);
通过EL将组件绑定到文档:

value="#{document1.field[index]}"
您需要重做“保存”按钮,我假设您同样地选择更新的值并将它们传输到文档中


并仅在需要时显示该组件,因此您的编辑按钮将切换编辑组件的可见性。

什么是“大”?并提供更多的代码,也许你可以通过迭代和数据转换(似乎你在循环中反复调用getItemValueArry——这是一个很大的禁忌!)哦,是的,正如@FrantisekKossuth所说的。最好将
getItemValueArray
内容复制到
viewScope
'd变量中,并仅从中获取当前的
rowIndex
。将大大减少调用文档和填充临时变量的次数。我假设您键入了这个,并且没有从代码中复制和粘贴,因为您在第一行有一个拼写错误?请尽可能使用EL。或者至少尝试以下调用:getItemValue().get(index),如果它有帮助,那么使用getComponent.setValue()总是“昂贵的”-尝试改用后端文档,并对Xpage进行(部分)刷新
value="#{document1.field[index]}"