我在xpage上创建了一个数字字段。但是输入检查无法正常工作。它仅接受数字,这是预期的行为,但未验证输入的数字的数量。由于regExp \ d {6}。
,接受了超过6位数的数字,这是无法实现的以下是xpage上的代码:
<xe:djNumberTextBox id="inputTextMidasId"
dojoType="dijit.form.NumberTextBox"
value="#{complaintDocument.midasId}" javaType="short"
regExp="\d{6}">
<xe:this.constraints>
<xe:djNumberConstraints pattern="######">
</xe:djNumberConstraints>
</xe:this.constraints>
</xe:djNumberTextBox>
有人能说出如何使这段代码有效吗?谢谢。
答案 0 :(得分:1)
我无法解释为什么正则表达式无法正常工作。
根据XPages Extension Library一书,您可以使用min
的{{1}}和max
属性来控制允许的最小值和最大值。那么也许你应该使用那些而不是正则表达式?
以下内容完全符合您的要求:
xe:djNumberConstraints
<强>更新强>
如果您在<xe:djNumberTextBox id="djNumberTextBox1" value="#{viewScope.test}">
<xe:this.constraints>
<xe:djNumberConstraints min="1" max="999999"></xe:djNumberConstraints>
</xe:this.constraints>
</xe:djNumberTextBox>
中写入001,则当用户离开该字段时,它将转换为1。这是你想要的吗?
使用xe:djNumberTextBox
,您可以使用正则表达式验证输入。以下内容将进行您所需的验证,并允许输入001等字段保存在字段中:
xe:djValidationTextBox