【问题标题】:Garlic.js on dynamically generated fieldsGarlic.js 关于动态生成的字段
【发布时间】:2013-01-30 11:44:56
【问题描述】:

如何让garlic.js 处理使用Javascript 动态生成的字段,例如this Railscast 或使用Cocoon?我已经尝试在嵌套字段部分中明确包含 js 文件,但没有运气:

= javascript_include_tag 'garlic'
.nested-fields
  = f.inputs do
    = f.input :client_id #etc

【问题讨论】:

    标签: javascript jquery ruby-on-rails


    【解决方案1】:

    您是否尝试过为这些动态字段显式调用 Garlic,一旦加载到 DOM 中?

    $( '#yourloadeddiv' ).garlic();
    

    【讨论】:

      【解决方案2】:

      我解决这个问题的方法是使用 jquery 存储 api:https://github.com/julien-maurel/jQuery-Storage-API 来持久化动态生成的表单的 HTML,此外还调用了大蒜来保存表单状态。

      页面加载后,我会检查本地存储中是否存在持久化表单。如果是,则将html加载到表单元素中,然后调用garlic来恢复表单状态!

      【讨论】:

      • 我猜你必须在持久化之前调用每个可能作用于原始表单的函数。例如 datepicker、select2/chosen、tootip 等。还是错了?
      【解决方案3】:

      问题是每当您重新加载或重新启动浏览器时,getedit/new 的请求都会被提供给服务器,因此相应视图文件中的静态字段会加载数据,而这些字段会被加载动态添加的会丢失。因此,数据将永远丢失。我不确定 garglic.js 是否会将数据添加到页面加载时不在 DOM 中的字段。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-04
        • 1970-01-01
        • 1970-01-01
        • 2021-10-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多