Javascript jQueryValidate-是否仍然可以使用子组?
我使用jQueryValidate1.11.1和jQuery1.11.0 我有一个表格,它有三对开始/结束日期。对于每一对,我验证是否两个输入都已填写,或者没有一个输入已填写,因为不允许填写开始日期和结束日期,反之亦然;另外,如果没有至少填写一对,我不能发送表格 假设用户只在开始日期中输入日期,而在结束日期中不输入日期。我必须给他看三条错误信息,每对一条。但是如果用户没有输入任何数据,我应该只向他发送一条错误消息 问题是我有四个组,每对一个,整个形式一个,换句话说,前三对是大一对的子群 如果我最后把较大的组放在代码中,如果用户没有输入数据,我只会收到一条错误消息,但是如果用户只输入开始日期,我只会收到一条错误消息。如果我把较大的组放在开头,当用户输入刚开始的日期时,我会收到三条错误消息,但如果用户发送一个空表单,也会收到三条相等的错误消息 HTML:Javascript jQueryValidate-是否仍然可以使用子组?,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,我使用jQueryValidate1.11.1和jQuery1.11.0 我有一个表格,它有三对开始/结束日期。对于每一对,我验证是否两个输入都已填写,或者没有一个输入已填写,因为不允许填写开始日期和结束日期,反之亦然;另外,如果没有至少填写一对,我不能发送表格 假设用户只在开始日期中输入日期,而在结束日期中不输入日期。我必须给他看三条错误信息,每对一条。但是如果用户没有输入任何数据,我应该只向他发送一条错误消息 问题是我有四个组,每对一个,整个形式一个,换句话说,前三对是大一对的子群 如果我最
<div id="msgErros"></div>
<form>
<label for="dataInicialSolicitacao">Solicitação Inicial</label>
<input type="text" class="data skipOrFillDatasSolicitacao atLeastOneRequired" id="dataInicialSolicitacao" value="" size="12" name="filtro.dataInicialSolicitacao" maxlength="10" />
<label for="dataFinalSolicitacao">Solicitação Final</label>
<input type="text" class="data skipOrFillDatasSolicitacao atLeastOneRequired" id="dataFinalSolicitacao" value="" size="12" name="filtro.dataFinalSolicitacao" maxlength="10" />
<br />
<label for="dataInicialLiberacao">Liberação Inicial</label>
<input type="text" class="data skipOrFillDatasLiberacao atLeastOneRequired" id="dataInicialLiberacao" value="" size="12" name="filtro.dataInicialLiberacao" maxlength="10" />
<label for="dataFinalLiberacao">Liberação Final</label>
<input type="text" class="data skipOrFillDatasLiberacao atLeastOneRequired" id="dataFinalLiberacao" value="" size="12" name="filtro.dataFinalLiberacao" maxlength="10" />
<br />
<label for="dataInicialInternacao">Internação Inicial</label>
<input type="text" class="data skipOrFillDatasInternacao atLeastOneRequired" id="dataInicialInternacao" value="" size="12" name="filtro.dataInicialInternacao" maxlength="10" />
<label for="dataFinalInternacao">Internação Final</label>
<input type="text" class="data skipOrFillDatasInternacao atLeastOneRequired" id="dataFinalInternacao" value="" size="12" name="filtro.dataFinalInternacao" maxlength="10" />
<br />
<button>Consultar</button>
<button type="reset">Limpar</button>
</form>
$(".data").mask("99/99/9999").datepicker();
$("form").validate({
rules: {
"filtro.dataInicialSolicitacao": {
skip_or_fill_minimum: [2, ".skipOrFillDatasSolicitacao"],
require_from_group: [2, ".atLeastOneRequired"]
},
"filtro.dataFinalSolicitacao": {
skip_or_fill_minimum: [2, ".skipOrFillDatasSolicitacao"],
require_from_group: [2, ".atLeastOneRequired"]
},
"filtro.dataInicialInternacao": {
skip_or_fill_minimum: [2, ".skipOrFillDatasInternacao"],
require_from_group: [2, ".atLeastOneRequired"]
},
"filtro.dataFinalInternacao": {
skip_or_fill_minimum: [2, ".skipOrFillDatasInternacao"],
require_from_group: [2, ".atLeastOneRequired"]
},
"filtro.dataInicialLiberacao": {
skip_or_fill_minimum: [2, ".skipOrFillDatasLiberacao"],
require_from_group: [2, ".atLeastOneRequired"]
},
"filtro.dataFinalLiberacao": {
skip_or_fill_minimum: [2, ".skipOrFillDatasLiberacao"],
require_from_group: [2, ".atLeastOneRequired"]
}
},
groups: {
datasSolicitacao: "filtro.dataInicialSolicitacao filtro.dataFinalSolicitacao",
datasLiberacao: "filtro.dataInicialLiberacao filtro.dataFinalLiberacao",
datasInternacao: "filtro.dataInicialInternacao filtro.dataFinalInternacao",
todos: "filtro.dataInicialSolicitacao filtro.dataFinalSolicitacao filtro.dataInicialLiberacao filtro.dataFinalLiberacao filtro.dataInicialInternacao filtro.dataFinalInternacao"
},
errorContainer: "#msgErros ul",
errorLabelContainer: "#msgErros",
wrapper: "li"
});
这是一个与更大的群体在最后。要测试它,只需输入开始日期并按“Consultar”,当我需要三条消息时,您只会收到一条消息。然后按“Limpar”和“Consultar”,您只会收到一条正确的消息
这是第一组的一个变体,开头是较大的组。要测试它,只需输入开始日期并按“Consultar”,您将收到三条消息,每行一条,这是正确的。然后按“Limpar”和“Consultar”,你也会收到三条信息,这是不对的
关于如何在这两种情况下都采取正确的行为,你有什么想法吗?否决这个问题的人能解释为什么吗?