用JS(prototype&Rails 3)更改hidden_field_tag的值
问题描述:
我骑Rails 3并使用Prototype。这说我只是真的问一个JS的问题..我有一个表格,这很简单。在表单中,我有一个隐藏的字段标记:用JS(prototype&Rails 3)更改hidden_field_tag的值
<%= hidden_field_tag(:instructor_id, @instructor.id) %>
当我向特定教师提交表单时,这一切都很好。
但是,我有另一个页面,显示了很多教师。而不是像上面的代码那样把教师ID放在那里,我想根据按下哪个提交按钮来改变隐藏字段的值。
即,一种形式,几个提交按钮。表单将提交并且一切正常,用户将能够继续并击中另一个提交按钮,将他们的数据发送给另一位教练。为了实现这一点,我想使用JavaScript来改变我点击隐藏字段的值。
<%form_for :call_back_request, :remote => true, :url => {:action => "call_back_request"} do |c| %>
<%= hidden_field_tag(:instructor_id, @instructor.id) %>
<%= hidden_field_tag(:pr_ok, true) %>
<%= c.text_field :first_name, :class => "profilesmstext" %>
<%= c.text_field :last_name, :class => "profilesmstext"%><br />
<%= c.text_field :postcode, :class => "profilesmstexta"%>
<%= c.text_field :telephone_number, :class => "profilesmstext" %>
<%= c.submit, :value="Go!" %>
这是形式的简单的一个教练的版本,基本上就是我说的做的是把在那里提交按钮和教练ID的循环。
因此,我将有一个循环(伪代码..)
@instructors each do |i|
<%=c.submit, :value => "go!", :onclick => "javascript to change hidden field value"%>
<script/js>
<function doChicagoShuffleOnId etc >
</script>
<%end%>
所以我的问题是 - 什么是更改隐藏字段标签的JS? 附加问题 - 这对我来说非常合理,可能是垃圾,如果有更明智的解决方案,请让我知道!
谢谢!
答
document.getElementById('theId').value = "what ever you want";
就像与其他所有input
嗨感谢这个,我现在给它一个镜头。一直在尝试类似的事情,但我现在假设我犯了一个错误,因为该值没有出现在隐藏字段标签中。我想我犯了一个错字,让我看看...... – LpLrich 2012-04-01 17:15:17
我给了我的hidden_field_tag:id =>“instructor_hidden_field”,我的Loop的确是rr,所以我结束了...... this.form。 instructor_hidden_field.value =#{rr [:instructor_id]}; Thanks for answer(s)。 – LpLrich 2012-04-01 18:38:15
尽管我使用了不同于您的建议,但请将您的答案设置为正确。谢谢你的回应,Gdoron。 – LpLrich 2012-04-01 18:38:42