Jquery 带引号的Post隐藏输入数组

Jquery 带引号的Post隐藏输入数组,jquery,ruby-on-rails,ruby-on-rails-4,Jquery,Ruby On Rails,Ruby On Rails 4,此表单包含问题和答案。任何问题我都有单选按钮,只有一个正确答案。相应地,我使用jQuery收集所有单选按钮值,并在提交时将它们分配到隐藏字段。(如果我不使用jQuery,它将为所有单选按钮元素分配相同的“名称”,使它们都位于同一组中) 我遇到的问题是,当我将单选按钮值指定给他们发布的隐藏字段时,如下所示: "answer_ids"=>["49,60,62,9,14,18,64,", "2"], 最后一个“2”来自带有复选框的问题,我可以保留这些值,因为这些输入可以具有相同的名称,因为我不

此表单包含问题和答案。任何问题我都有单选按钮,只有一个正确答案。相应地,我使用jQuery收集所有单选按钮值,并在提交时将它们分配到隐藏字段。(如果我不使用jQuery,它将为所有单选按钮元素分配相同的“名称”,使它们都位于同一组中)

我遇到的问题是,当我将单选按钮值指定给他们发布的隐藏字段时,如下所示:

"answer_ids"=>["49,60,62,9,14,18,64,", "2"],
最后一个“2”来自带有复选框的问题,我可以保留这些值,因为这些输入可以具有相同的名称,因为我不在乎检查了多少

第一组数字是我需要的正确格式的值。我尝试过拆分(“,”),它可以工作,但实际值似乎并没有像var回答的那样更改为数组

我需要:

"answer_ids"=>["49", "60", "62", "9", "14", "18", "64", "2"],
如何在正确的位置获得报价

<%= form_for(@score) do |f| %>
<%= hidden_field_tag :test_id, @test.id %>
<%= hidden_field_tag :user_id, current_user.id %>
<%= hidden_field_tag "answer_ids[]", [] %>
<% @i = 0 %>
<% @a = ("a".."z").to_a %>
<legend><%= @test.name %></legend>
<% @test.question_ids.each do |q| %>
<% @question = Question.find(q) %>
<% @i += 1 %>
<% @answers = @question.answers %>
<% if (@answers.where(correct: true).count == 1) %>
      <label class="col-md-12 control-label" for="radios"><b><%= @i %>.&nbsp;</b><%= @question.content %></label>
      <div class="col-md-11">
        <% @answers.each_with_index do |me, i| %>
          <div class="radio">
            <span style="margin-left: 35px;">
                <%= radio_button_tag @question.id, me.id %> <!-- "answer_ids[]" -->
                <%= @a[i] %>.
                &nbsp;
                <%= me.option %>
            </span>
          </div>
        <% end %>
    </div>
<% else %>
      <label class="col-md-12 control-label" for="checkboxes"><b><%= @i %>.&nbsp;</b><%= @question.content %></label>
      <div class="col-md-11">
        Select all that apply:<br/>
        <% @answers.each_with_index do |me, i| %>
          <div class="checkbox">
            <span style="margin-left: 35px;">
                <%= check_box_tag 'answer_ids[]', me.id %>
                <%= @a[i] %>.
                &nbsp;
                <%= me.option %>
            </span>
          </div>
        <% end %>
    </div>
<% end %>
<% end %>
<div class="actions">
<%= f.submit "Save Test", id: "commit", class: "btn btn-lg btn-primary save" %>
</div>
<% end %>
<script>
$('.new_score').on('submit', function() {
    var input = "";
    $( "form input:radio:checked" ).each(function(i, obj) {
        input += (obj.value) + ","
    });
    var answers = input.split(',');
    $('input[type=hidden][name="answer_ids[]"]').val(answers)
});
</script>

. 
.
. 
选择所有适用项:
. $('.new_score')。关于('submit',函数(){ var输入=”; $(“表单输入:收音机:选中”)。每个(功能(i,obj){ 输入+=(对象值)+“ }); var answers=input.split(','); $('input[type=hidden][name=“answer\u ids[]”)val(answers) });
您是否可以提供在浏览器中生成的html代码,以便我正确理解结构。我知道jQuery,但我不知道您的场景和您正在使用的模板引擎,我决定在提交输入后附加输入,这样RubyonRails就不知道有什么不同了。这只需添加一个复选框隐藏输入,该复选框将被选中到表单中,并带有每个选定电台的值

$( "form input:radio:checked" ).each(function(i, obj) {
         $('#new_score').append('<input id="answer_ids_'+i+'" name="answer_ids[]" type="hidden" value="'+obj.value+'" checked>');
    });
$(“表单输入:收音机:选中”)。每个(函数(i,obj){
$('new#u score')。追加('');
});

我们jQuery是否更容易为每个值添加一个新的隐藏字段?为什么这是一个答案,这应该是一个注释?我没有足够的声誉来评论。它要求我拥有至少50的声誉:)哦,好吧,我明白了,有足够的代码。答案在于剧本。