【问题标题】:Change value of hidden_field_tag with JS (prototype & Rails 3)使用 JS 更改 hidden_​​field_tag 的值(原型和 Rails 3)
【发布时间】:2012-04-15 11:14:33
【问题描述】:

我正在使用 Rails 3 并使用 Prototype。那就是说我只是在问一个JS问题..

我有一个表格,很简单。在表单中我有一个隐藏字段标签:

<%= 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 是什么? 附加问题 - 这对我来说很有意义,可能是垃圾,如果有更明智的解决方案,请告诉我!

谢谢!

【问题讨论】:

    标签: javascript ruby-on-rails-3 forms prototype hidden-field


    【解决方案1】:
    document.getElementById('theId').value = "what ever you want";
    

    就像其他人一样input

    【讨论】:

    • 您好,谢谢,我现在就试一试。一直在尝试与此类似的事情,但我现在假设我犯了一个错误,因为该值没有出现在隐藏字段标签中。我想我打错了,让我看看......
    • 我给了我的 hidden_​​field_tag :id => "instructor_hidden_​​field" 而我的 Loop 的做法是 rr,所以我最终得到... this.form.instructor_hidden_​​field.value = #{rr[:instructor_id] };感谢您的回答。
    • 将您的答案设置为正确,尽管我使用了与您建议的不同的行。感谢您的回复,Gdoron。
    • 我会尽力记住在获得 15 名声望时回来支持这个答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-05
    • 1970-01-01
    • 1970-01-01
    • 2011-05-29
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多