繁体   English   中英

在动态嵌套模型字段上进行Rails JavaScript验证

[英]Rails JavaScript validations on dynamic nested model fields

我有一个嵌套的模型表单,用户可以在其中创建一个“项目”,其中可以包含任意数量的“任务”,这些任务由任务名称和名称组成。 用户使用jQuery动态添加这些任务。

我想为每个任务中的字段提供客户端验证,当前我正在使用livevalidation插件。

问题在于,输入字段会根据当前时间被赋予动态ID,因为提交表单时,对于Rails而言,它们必须是唯一的。

我看到的方式有两种选择:

  1. 以某种方式使javascript验证接受通配符,以便每次添加任务时,都可以根据ID不变的部分针对其字段设置验证。

  2. 在创建任务的同时,创建必要的内联验证Javascript。

以上工作吗? 有更好的选择吗? 如何从部分ID匹配中选择一个元素放入验证器?

谢谢

我建议使用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"
    }
  };
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM