xpages - 对话框在 xpages 中列出 Lotus Notes

标签 xpages lotus-notes

xpages 中是否有 Lotus Notes Dialog list 的等效项?或者,如果可能的话,使用一个 xpage combobox“接受”多个选定值。

感谢您的宝贵时间

最佳答案

使用xe:djextListTextBox收集并显示多个值,使用xe:valuePicker将现有列表中的值添加到ListTextBox,并可以选择使用按钮 提示输入新值并将其添加到 ListTextBox。

这是 xe:djextListTextBoxxe:valuePicker 的示例:

   <xe:djextListTextBox
      id="djextListTextBox1"
      multipleSeparator=","
      multipleTrim="true"
      defaultValue="abc,def"
      value="#{viewScope.test}">
   </xe:djextListTextBox>
   <xe:valuePicker
      id="valuePicker1"
      for="djextListTextBox1"
      pickerText="Add">
      <xe:this.dataProvider>
         <xe:simpleValuePicker>
            <xe:this.valueList><![CDATA[#{javascript:
               ["abc","def","ghj","klm","nop","xyz"]
            }]]></xe:this.valueList>
         </xe:simpleValuePicker>
      </xe:this.dataProvider>
   </xe:valuePicker>

enter image description here

我喜欢这种方法,因为它可以让用户轻松添加和删除值,而且看起来不错。

替代方案是 xp:inputTextxe:valuePicker 的组合:

   <xp:inputText
      id="inputText1"
      multipleSeparator=","
      value="#{viewScope.test}"
      defaultValue="abc,def">
   </xp:inputText>
   <xe:valuePicker
      id="valuePicker1"
      for="inputText1">
      <xe:this.dataProvider>
         <xe:simpleValuePicker>
            <xe:this.valueList><![CDATA[#{javascript:
               ["abc","def","ghj","klm","nop","xyz"]
            }]]></xe:this.valueList>
         </xe:simpleValuePicker>
      </xe:this.dataProvider>
   </xe:valuePicker>

enter image description here

用户可以添加自己的新值,因为输入文本字段是可编辑的。如果允许新值并且用户知道如何考虑多个分隔符来编辑值,则此方法可能是一个很好的解决方案。

如果您希望将每个值放在单独的行中,您可以使用xe:djTextarea并将 multipleSeparator 设置为换行符:

   <xe:djTextarea
      id="djTextarea1"
      multipleSeparator="#{javascript:'\n'}"
      value="#{viewScope.test}"
      defaultValue="#{javascript:['abc','def']}"
      cols="30">
   </xe:djTextarea>
   <xe:valuePicker
      id="valuePicker1"
      for="djTextarea1">
      <xe:this.dataProvider>
         <xe:simpleValuePicker>
            <xe:this.valueList><![CDATA[#{javascript:
               ["abc","def","ghj","klm","nop","xyz"]
            }]]></xe:this.valueList>
         </xe:simpleValuePicker>
      </xe:this.dataProvider>
   </xe:valuePicker>

enter image description here

文本框会随着所选值的数量自动增大和缩小。

关于xpages - 对话框在 xpages 中列出 Lotus Notes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23108740/

相关文章:

maven - 在 Xpages 文件中,通过 jenkins 使用 maven( headless 设计器)创建的 NTF 包中缺少用于自动化测试的文件

java - 从 Lotus Notes 下载文档

lotus-notes - 如何在每次复制器运行时运行代码?

lotus-notes - 使用 MIME 控制电子邮件中 ​​HTML 和附件的顺序

java - 通过 java.text.DecimalFormat 格式化数字总是在 SSJS 中返回错误

javascript - 我可以使用 csjs 清除 sessionScope 变量吗?

xpages - documentId 解析代码未执行 XPage

java - 从 java bean 下载文件只能运行一次

java - NotesCLI 3.4 java异常

java - 在 Java 中自动处理电子邮件