更改 submit_tag 上的文本
Changing text on submit_tag
我正在为 Rails 的 Ruby 中的演示文稿注册申请。因此,我显示了可用演示文稿的列表,最后一列显示了一个用于注册该特定演示文稿的按钮。
<table class="table">
<thead class="thead-dark">
<tr>
<th scope="col">Name</th>
# ...
</tr>
</thead>
<tbody>
<tr>
<% @presentations.each do |pres| %>
<td scope="row"><%= pres.Name %></td>
# ...
<td scope="row">
<% unless @current_student.Selected == pres.Titel %>
<%= form_tag students_select_path do %>
<%= submit_tag "Choose", class: "btn", value: pres.Title %>
<% end %>
</td>
</tr>
</tbody>
</table>
我希望按钮显示 "Choose"
,然后将参数 pres.Title
发送到我定义的函数。出于某种原因,table 中的按钮显示 pres.Title
的值,而不是 "Choose"
的值。如何解决?
当前工作实施:
def addtodb
@student = Student.find_by(id: session[:student_id])
if @student.Selected == nil
prestitle = params[:commit]
@schueler.update_attribute(:Selected, prestitle)
redirect_to students_select_path
end
end
I would like the button to say "Choose", then send off the parameter
pres.Title to a function that I have defined. For some reason, the
button in the table shows the value of pres.Title, and not of "Choose"
submit_tag(value = "Save changes", options = {}) public
<%= submit_tag "Choose", class: "btn", value: pres.Title %>
不会 生成带有文本的提交按钮 选择 因为您正在覆盖该值作为 pres.Title
。您需要将其更改为
<%= submit_tag "Choose", class: "btn" %>
您可以使用 hidden_field_tag
代替
<%= form_tag students_select_path do %>
<%= hidden_field_tag 'prestitle', pres.Title %>
<%= submit_tag "Choose", class: "btn" %>
<% end %>
最后,在控制器中使用params[:prestitle]
访问值。
注:
作为 Rails 约定之一, 属性名称 应该是 小写 。我建议您在您的应用中关注它。
我正在为 Rails 的 Ruby 中的演示文稿注册申请。因此,我显示了可用演示文稿的列表,最后一列显示了一个用于注册该特定演示文稿的按钮。
<table class="table">
<thead class="thead-dark">
<tr>
<th scope="col">Name</th>
# ...
</tr>
</thead>
<tbody>
<tr>
<% @presentations.each do |pres| %>
<td scope="row"><%= pres.Name %></td>
# ...
<td scope="row">
<% unless @current_student.Selected == pres.Titel %>
<%= form_tag students_select_path do %>
<%= submit_tag "Choose", class: "btn", value: pres.Title %>
<% end %>
</td>
</tr>
</tbody>
</table>
我希望按钮显示 "Choose"
,然后将参数 pres.Title
发送到我定义的函数。出于某种原因,table 中的按钮显示 pres.Title
的值,而不是 "Choose"
的值。如何解决?
当前工作实施:
def addtodb
@student = Student.find_by(id: session[:student_id])
if @student.Selected == nil
prestitle = params[:commit]
@schueler.update_attribute(:Selected, prestitle)
redirect_to students_select_path
end
end
I would like the button to say "Choose", then send off the parameter pres.Title to a function that I have defined. For some reason, the button in the table shows the value of pres.Title, and not of "Choose"
submit_tag(value = "Save changes", options = {}) public
<%= submit_tag "Choose", class: "btn", value: pres.Title %>
不会 生成带有文本的提交按钮 选择 因为您正在覆盖该值作为 pres.Title
。您需要将其更改为
<%= submit_tag "Choose", class: "btn" %>
您可以使用 hidden_field_tag
代替
<%= form_tag students_select_path do %>
<%= hidden_field_tag 'prestitle', pres.Title %>
<%= submit_tag "Choose", class: "btn" %>
<% end %>
最后,在控制器中使用params[:prestitle]
访问值。
注: 作为 Rails 约定之一, 属性名称 应该是 小写 。我建议您在您的应用中关注它。