簡體   English   中英

如何在jQuery中傳遞form_builder

[英]how to pass form_builder in jquery escape_javascript

我有兩個類, MessageComment ,其關聯如下

class Message ActiveRecord::Base
  attr_accessible :comments_attributes
  has_many :comments
  accepts_nested_attributes_for :comments
end

class Comment ActiveRecord::Base
  belongs_to :message
end

我將表格建模為

= form_for @message do |f|
  f.text_field :msg
  %a#add-comment Add Comment

_comment.html.haml
  = f.fields_for :comments do |c|
      c.text_field :value

當單擊“添加評論”按鈕時,我通過jquery將評論輸入附加到表單f上,如下所示

$('#add-comment').click(function() {
  $('#add-comment').prepend(("#{escape_javascript(render(:partial => "comment", f: f))}");  
});

但是我無法訪問此表格,我得到

Undefined local variable or method 'f'

這個怎么做?

以您的形式嘗試。 我假設:

  = f.fields_for :comments do |c|
      c.text_field :value

在您的評論中有些偏頗。

所以你的形式應該是這樣,並將f變量傳遞給局部變量

= form_for @message do |f|
  f.text_field :msg
  %a#add-comment Add Comment

  = render :partial => 'comment', :locals => {:f => f}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM