我们有一个用C#开发的asp.net web表单。这种形式有大约100个字段,它是非常动态的形式。从某种意义上说,它是动态的,当你第一次开始时你只能看到大约20个字段,但随着你继续在表单中进行不同的选择,包含字段的面板被显示或隐藏。几乎每个字段都使用.net验证器在客户端进行验证。 JavaScript用于打开/关闭验证器,具体取决于它们所在的面板是否可见。asp.net需要关于复杂形式和验证器的一些设计建议
这个表单有一些bug,后面调试这个表单很麻烦,因为almos每个字段都至少有2个验证器 - require和/ regular experssion。还有一些被选中的字段做autopostback。大多数用户不能提交表单,因为一个/多个验证器仍然启用,但它们所连接的字段是不可见的,因此很难调试哪个验证器导致问题。
所以这里我的设计问题。
- 在这种情况下调试验证器的更简单的方法是什么?如何找到哪些验证器仍在?
- 而不是使用asp.net验证器,我应该重新编码表单,并且使用JavaScript进行验证,至少用这种方法可以更好地调试验证器:
。 - 任何设计考虑因素?既然这种形式是如此的痛苦,我们就不会重新设计它,并且以正确的方式去做。
我在想如果我创建一个单一的JavaScript函数,每次单击或更改表单字段时都会调用,这个JavaScript函数将被调用,它将检查所有100个表单字段。如果表单域可见,则启用相应的验证器,否则禁用。
您对这种方法有什么看法?
感谢您的时间和建议提前。
一个有100个字段的窗体对我来说听起来有问题。也许尝试并将一些字段移到另一个表单。你有没有考虑过使用向导控制? – StevieB
当重新阅读你的问题时,我想知道为什么人们把他们的生活变得如此复杂,同时保持整洁和干净的事情要容易得多并且收益更好。 – pid