写入约束以根据在Orbeon Form Builder中的另一个字段中输入的值验证字段

时间:2011-06-12 17:45:39

标签: orbeon xforms

我想根据“电话类型”字段中的选择来验证电话号码字段的大小。单元格编号应为10,主页和工作编号应为11。如何在Orbeon Form Builder中编写约束表达式。我尝试在约束字段中使用if,但是没有成功。

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

假设您有两个控件:电话类型和电话号码。

  1. 创建电话类型控件,例如作为下拉列表或单选按钮。为其命名,单击齿轮以打开编辑控制详细信息。假设该名称为phone-type。稍后您将引用用户选择的值$phone-type
  2. 编辑项目并记住您为每个项目指定的值。该值将在以后使用,而标签是在表单中向最终用户显示的值。假设值为workmobile
  3. 创建单行控件(文本字段),单击红色感叹号以打开编辑验证属性对话框,然后在 Constraint 下,写:

    string-length(.) = (if ($phone-type = 'work') then 11 else 10)