【问题标题】:To Get the radio button value in ruby on rails获取 ruby​​ on rails 中的单选按钮值
【发布时间】:2013-10-15 12:06:53
【问题描述】:

我创建了一个测验,并将每页一个问题显示为部分形式,当我使用创建时,我想要在创建之前检查的单选按钮的值。当我接下来在我的控制器中使用 params[:answer] 时,它返回 null .. 谁能帮我获取我检查过的单选按钮的值

提前致谢

<div class = "y">
<% form_for @answer do |f|%>
<div class = "label_field_pair">
<label for "questions">
  <%= @ans.ques %>
</label>  
</div> <br>
<div class = "label_field_pair2">
<label for "options">
  <div id = "option-1">
    <%= radio_button_tag "answer", "#{@ans.id}ans1"%><%= @ans.ans1 %>
  </div><br>
  <div id = "option-2">
    <%= radio_button_tag "answer", "#{@ans.id}ans2"%><%= @ans.ans2 %>
  </div><br>
  <div id = "option-3">
    <%= radio_button_tag "answer", "#{@ans.id}ans3"%><%= @ans.ans3 %>
  </div><br>
  <div id = "option-4">
    <%= radio_button_tag "answer", "#{@ans.id}ans4"%><%= @ans.ans4  %>
  </div><br>
</label>
  </div>
 <div class="next">
  <%= link_to_remote "Next", 
    :before => "Element.show('loader')",
    :success => "Element.hide('loader')",
    :url=>{:controller=>"answers", :action=>"next"},
    :with => "'&passed_question=#{@ans.id}&'+'&exam_group_id=#{@exam_group.id}&'"
  %> 
<% end %>
 </div> 
<% end %> 
</div> 

在控制器中

def next
@user = current_user
@student = Student.find_by_admission_no(@user.username)
@exam_group = ExamGroup.find_by_id(params[:exam_group_id])
@answer = Answer.new(params[:ans])
@answer.answer = params[:answer]
@answer.exam_group_id = @exam_group.id
@answer.user_id = @user.id
passed_question = params[:passed_question]
@answer.questions_id = passed_question
if @answer.save
  @ans = Question.find_by_id(left_random, :conditions => ['id not in (?) && exam_group_id=?',answered, @exam_group])
    render(:update) do |page|
      page.replace_html 'main', :partial => 'ans', :object => @ans
    end
end
end
def ans
@user = current_user
@student = Student.find_by_admission_no(@user.username)
@exam_group = ExamGroup.find(params[:exam_group_id])
@tot_ans = answered.count
@last_ques = (Question.count-1)
render(:update) do |page|
  page.replace_html @ans, :partial => 'ans', :object => @ans
end
end

【问题讨论】:

  • 您的 form_for 指定 @answer,但单选按钮是 @ans 的一部分。
  • 查看你的参数会很有帮助:)
  • 实际上link_to_remote next 是post,并在我的开发日志Processing AnswersController#next 中创建一个答案数据库,其中ans 返回null....(适用于2013-10-15 19:51 的127.0.0.1 :25) [POST] 参数:{"passed_question"=>"3", "action"=>"next", "authenticity_token"=>"EjReUuUVAbRJ6s3k7Tj/pS7s2ENUUgTvyaiiRz9/IF8=", "exam_group_id"=>"1", "controller"=>"answers"} 在这个我想要在单选按钮中给出的答案参数来获得结果

标签: ruby-on-rails ruby


【解决方案1】:

在您的单选按钮输入开始之前您需要“f”,但您的控制器代码乍一看似乎效率很低:

 <%= f.radio_button :answer, "#{@ans.id}ans1" %> 

【讨论】:

    【解决方案2】:

    其实link_to_remote下一个是post,并在ans返回null....中创建一个答案数据库 在我的开发日志处理AnswersController#next(2013-10-15 19:51:25 为 127.0.0.1)

    [POST] Parameters: {"passed_question"=>"3", "action"=>"next", "authenticity_token"=>"EjReUuUVAbRJ6s3k7Tj/pS7s2ENUUgTvyaiiRz9/IF8=", "exam_group_id"=>"1", "controller"=>"answers"}
    

    在此我想要在单选按钮中给出的答案参数以获得结果

    【讨论】:

      猜你喜欢
      • 2011-04-11
      • 1970-01-01
      • 2016-08-09
      • 1970-01-01
      • 2013-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多