深层嵌套Web表单验证的模式是什么?

时间:2009-07-01 20:19:57

标签: java design-patterns web-applications validation

我正在重构一个有一些复杂形式的大型遗留Web应用程序。

这些表单使用javascript根据其他输入的字段显示或隐藏字段。例如,勾选“第二个地址”的复选框,会显示一组要输入的其他字段。

目前的验证包括许多深度嵌套的if语句。类似于:

if(checkboxTicked) {
  haveMandatoryAddressFieldsBeenEntered();
   if(addressHasbeenFilledIn) {
        validateAddress()
   }
}

现在想象这个例子有更深的嵌套!

我的问题是 - 是否有一个很好的模式或最佳实践,我可以用它来重构?

作为参考我正在使用Spring MVC - 但我想这适用于多种技术。

1 个答案:

答案 0 :(得分:1)

使用MVC时,我将验证放入模型中。模型和控制器不知道视图中的表单是什么样的。