我有一个嵌套的模型表单,用户可以在其中创建一个“项目”,其中可以包含任意数量的“任务”,其中包含“名称”和“描述”。这些任务由用户使用jQuery动态添加。
我想为每个任务中的字段提供客户端验证,目前我正在使用livevalidation插件。
问题是输入字段是根据当前时间给出的动态ID,因为在提交表单时,Rails必须是唯一的,才能完成它的工作。
我看到它的方式,我有两个选择:
以某种方式获取javascript验证以接受通配符,以便每次添加任务时,可以根据其不会更改的id部分对其字段设置验证。
在创建任务的同时创建必要的内联验证javascript。
上述工作会不会?还有更好的选择吗?如何从部分id匹配中选择一个元素进入验证器?
由于
答案 0 :(得分:1)
我建议使用jQuery Validation Plugin。它允许您根据属性名称而不是ID来创建验证,并且您可以对不同的表单使用相同的规则集:
validation = { rules: { "name": "required", "description": "required" } } jQuery("#form-1").validate(validation); jQuery("#form-2").validate(validation);
如果要传递显式ID,可以使用函数生成规则:
function validation_rules(index){ return { rules: { "name["+index+"]": "required", "description["+index+"]": "required" } }; }