【问题标题】:jquery validation on multiple dynamically generated fields (using nested attributes in rails 3.1)对多个动态生成的字段进行 jquery 验证(使用 rails 3.1 中的嵌套属性)
【发布时间】:2011-12-22 21:50:26
【问题描述】:

我正在使用 jquery 验证插件来验证我的 rails 应用程序的表单。 该表单允许用户将项目动态添加到表单的主对象的 has_many 关系中。 我的问题是,如何使用 jQuery 验证插件验证这些项目中的每一个。例如关联对象的描述文本字段。

动态添加的表单中的字段名称如下所示: 项目[tickets_attributes][0][description]

其中project是主要对象,tickets_attributes是与我的has_many关联的属性关联, 0 (or association object id) unique 和 description 是我的 has_many 关联中的属性名称。

【问题讨论】:

    标签: jquery ruby-on-rails validation ruby-on-rails-3.1 nested-attributes


    【解决方案1】:

    我认为您正在寻找的是.delegate(),这将使您可以将事件处理程序附加到可能动态生成的任何项目。 在下面的示例中,任何具有“动态项目”类的项目

    类似的例子

    $form.delegate(".dynamic-item", "onChange", validate)
    

    只要您的动态元素之一发生更改,这将触发验证功能,您可以使用它来调用验证器

    【讨论】:

      【解决方案2】:

      例如,当您在单击按钮“发送” 上添加事件时,您需要使用.live() 而不是.click().bind()

      .live() 将接受您的所有动态输入。

      更新

      .live() 现在已在 jQuery 1.7 中弃用,并已在 1.9 中删除。请改用.on()

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-10
        • 2014-04-02
        • 2023-03-26
        • 1970-01-01
        相关资源
        最近更新 更多