【发布时间】: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