【问题标题】:Repeat Control inside repeat control in XPagesXPages 中重复控件内的重复控件
【发布时间】:2014-06-13 15:42:27
【问题描述】:

我在另一个重复控件中有一个重复控件。这个概念是创建类似于日历的东西。所以我想创建一个二维重复,我使用一个重复垂直创建“行”,并在其中另一个重复创建水平列。第二个重复控件在 div 控件内有一个输入文本控件。代码如下:

    <xp:repeat id="repeat4" rows="30">
        <xp:this.value>
<![CDATA[#{javascript:var projects2 = new Array("Project 1","Project 2");
    return projects2;}]]>
</xp:this.value>
<xp:repeat id="repeat3" rows="31">
<xp:this.value><![CDATA[#{javascript:var inBoxes = new java.util.Vector();
    for(i=1;i<=5;i++){
        inBoxes.add(i);
    }

    return inBoxes;}]]>
</xp:this.value>
    <xp:div id="DivInputs" styleClass="DivInputs">
  <xp:inputText id="inputText1"
 style="width:100%">
 </xp:inputText>
    </xp:div>
    </xp:repeat>
   </xp:repeat>

我现在想获取输入字段的值,所以如果我使用它,它可以工作:

repeat4.setRowIndex(0); 
repeat3.setRowIndex(0); 
sum = sum + inputText1.getValueAsString();

但是当我执行此循环时,它只获取第一行单元格值:

for(i=0;i<2;i++){
repeat4.setRowIndex(i);
repeat3.setRowIndex(0);
sum = sum + inputText1.getValueAsString();
}

有什么想法吗?

【问题讨论】:

    标签: xpages lotus-notes lotus-domino lotus


    【解决方案1】:

    你需要改变你的方法。应该使用绑定而不是 getValue 来获取值。所以做类似的事情

      var x = [[0,0,0,0,0,0,0],[...],....];
      viewScope.calendar = x;
    

    然后将控件绑定到变量。这消除了检查确切位置或变量名称的需要。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多