在Rails 3中添加了Jquery的字段在使用params的控制器中不可见

时间:2011-07-01 21:15:18

标签: javascript jquery html ruby-on-rails-3

我正在使用rails 3和Jquery使用“添加包”按钮在form_tag中动态添加字段。我在Jquery中使用以下代码:

  var counter = 1;
  $('#but').click(function()
  {
        var s = '<%= escape_javascript(render(:partial => "form2")) %>';
        var p = $(s);
        $('#packagename', p).attr("name","packagename" + counter);
        $('#type',p).attr("name","type" + counter);
        $('#price', p).attr("name", "price" + counter);
        $('#pricetype', p).attr("name", "pricetype" + counter);
        $('#currency', p).attr("name", "currency" + counter);
        $('.fac', p).each(function(){
          $(this).attr("name", $(this).attr("name") + counter);
        });
        $('.pack').append(p);
        counter ++;
  }

为了重命名“name”属性,所以我可以使用params将字段的值传递给控制器​​。这是我的部分“form2”

<div class="span-16" style="padding-bottom:10px;" id="package">
  <%= label_tag "PACKAGE: " %> <br /> <br/>
 <%= label_tag "Name*:" %> <br />
 <%= text_field_tag :packagename %>
<br />
<%=label_tag "Type:*"%> <br />
 <% ["Private office", "Private room", "Shared desk"].each do |type| %>
  <%= radio_button_tag  "type", type, false, :class => 'option_types', :id => 'type' %>
  <%= label_tag type, type %>
<% end %>
 <%= render 'price' %>
<%= label_tag "Available facilities and amenities:" %><br />
  <% ["Printer", "Wi-Fi"].each do |fac| %>
    <%= check_box_tag  fac, fac, false, :class => 'fac' %>
    <%= label_tag fac, fac %>

  <% end %>

</div>

但是,使用jquery添加的字段的参数不会显示在控制器或服务器的params部分中。 html源代码可以在这里找到:http://pastebin.com/AszhDL8Y 有什么想法吗?

0 个答案:

没有答案