我使用 DubFriend/jquery.repeater 重复几个字段,proengsoft/laravel-jsvalidation 导出 Laravel 验证规则,使用 jQuery.validation 验证它们。
由jquery.repeater处理的复选框,在名称后总是有一个额外的 []。
有问题的示例如下:
<div data-repeater-list="group-prof_entities">
<div data-repeater-item>
<input name="ep_is_default" type="checkbox">
</div>
</div>
Jquery.Repeater 初始化它,现在看起来像这样(第一个):
<input name="group-prof_entities[0][ep_is_default][]" type="checkbox">
下面是 Laravel 规则和 JsValidation 预期字段名称:
'group-prof_entities.*.ep_is_default' => 'required',
group-prof_entities[*][ep_is_default]
如果我将括号添加到 Laravel 规则中,它会期望这样:
group-prof_entities[*][ep_is_default[]]
那不好。
有想法该怎么解决这个吗?
我试图手动删除生成名称中的“[]”,并且该规则显然工作正常。
我什至尝试删除那个“[]”并构建了一个在 jquery.repeater 启动时运行的函数,在元素的新副本上,但它在删除元素时失败,因为重新计算索引和“[]”被重新插入。
谢谢。