【问题标题】:How to validate different parts of a form using jQuery validate?如何使用 jQuery validate 验证表单的不同部分?
【发布时间】:2015-10-01 02:11:10
【问题描述】:

我有一个表单,其中嵌套了一系列控件,虽然我可以获得整个表单的验证,但我需要在不同的时间验证表单的不同部分。

例如,我有一个表格要求用户填写他们的个人详细信息(姓名、地址等),但在表格中可以选择包含多个地址。我需要能够验证整个表单(地址不是强制性的),而且还单独验证控制辅助地址输入的表单(即在填写辅助地址时,用户必须输入街道、邮政编码, 等等)。它只是地址的一种形式,每个输入的地址都将使用这些值在<li></li> 中构建一个字符串。

我之前已经使用 Telerik Kendo 轻松完成了此操作,您可以指定要验证的容器,无论它们是否嵌套,因此您可以分别验证主容器和子容器,但我只是不确定如何使用 jQuery 验证来做到这一点。我也知道嵌套表单是违反标准的,所以我不完全确定如何处理这个问题。

所以本质上我需要创建这种结构,其中保存表单的按钮验证用户至少指定了姓名和出生日期,但如果添加地址,用户必须输入地址详细信息。

- Name (mandatory)
- Date of birth (mandatory)
- Addresses (optional)
----- [form to add addresses]
------ Address Line (mandatory)
------ City (mandatory)
------ State (mandatory)
------ Zip (mandatory)
------ Button to add address
- Gender (optional)
- Age (optional)
- Weight (optional)
- Button to save form

【问题讨论】:

  • 您是否为新地址动态添加控件?
  • 不,添加地址的控件将在首次加载时加载。
  • 首先,嵌套表单无效,无法工作。您应该考虑动态添加控件以包含新地址(请参阅this example)。您还可以按照this answer 验证控件组,但我认为这对您的情况没有帮助
  • 啊,谢谢,这让我对要走的路线有了一个不错的想法。

标签: jquery asp.net-mvc validation


【解决方案1】:

基本上,您需要做的是在一个表单中指定所有上述控件,并确定哪些字段始终是必需的,哪些是有条件的。 为此,您可以使用 MVC 自定义验证。请按照相同的链接进行操作。

MVC Custom validations

【讨论】:

  • 我不知道这将如何与我的解决方案一起使用。它不能解决表单中的表单问题,并且能够自行验证地址。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-17
  • 1970-01-01
  • 1970-01-01
  • 2021-09-03
  • 2011-09-10
相关资源
最近更新 更多