
我的实例如下:
<data> <password/> <newPassword/> <confirmPassword/></data>
输入如下:
<xf:secret ref="password"> <xf:label>old PAssword</xf:label> </xf:secret> <xf:secret ref="newPassword"> <xf:label>New Password</xf:label> </xf:secret> <xf:secret ref="confirmPassword"> <xf:label>Confirm Password</xf:label> </xf:secret> <div> <xf:submit submission="test"> <xf:label>Change Password</xf:label> </xf:submit> </div>
我不知道如何使用confirmPassword验证和匹配newPassword,我知道它使用< xf:bind标签,但我还没有找到如何验证节点之间的相等性.
请帮忙!
<xf:bind nodeset="password" required="true()" constraint=". != ''"/><xf:bind nodeset="newPassword" required="true()" constraint=". != ''"/><xf:bind nodeset="confirmPassword" required="true()" constraint=". = ../newPassword"/>
这将在所有三个输入字段后面添加所需的标记,确保填充所有三个字段,最后两个必须相同.您可以通过在newPassword的约束中添加’和’来添加密码和newPassword不能相同的约束.
就个人而言,我希望得到更多反馈.这些约束只会导致指标出现在每个字段后面,而没有任何进一步的信息.如果您在尝试提交信息时可以显示消息,那将是最好的.但这涉及到xforms事件处理,而我自己也没有经验告诉你如何.有一个xforms-submit-event,你可能会以某种方式捕获并采取行动.但最常见的问题是,一旦提交被提交,在将内容发送到服务器之前,您没有或只有很少的可能性向用户显示反馈.
另一种选择是使用xf:output显示条件消息.如果向xf:secret输入添加incremental =“true”属性,则每次击键时都会刷新这些属性.只需在xf:output元素上使用带有choose表达式的value属性.像这样的东西:
<xf:output value="choose(password = '' or newPassword = '' or confirmPassword = '','Please enter current password,new password,and confirmation of new password','')"/><xf:output value="choose(newPassword = '' or newPassword = confirmPassword,'','new password,and confirmation do not match!')"/>
如果您愿意,还可以在它们周围添加一些漂亮的打印.进行动态样式化的其他方法是使用xf:group,但我会将其作为练习留给你.
最后,确保检查服务器端的所有值,以确保没有人作弊.
HTH!
总结以上是内存溢出为你收集整理的html – xforms密码确认密码全部内容,希望文章能够帮你解决html – xforms密码确认密码所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)