【发布时间】:2011-12-18 09:27:09
【问题描述】:
我想连接两个表单文本字段值并将它们分配给我在 Rails 视图中的隐藏表单字段:
<%= f.hidden_field :shortcode, :value => :package :pins %><br />
<div class="field">
<%= f.label :package_type %><br />
<%= select("package", "package_type_id", PackageType.all.collect {|p| [p.packagetype, p.id]} ) %>
</div>
<div class="field">
<%= f.label :pins %><br />
<%= f.text_field :pins %>
</div>
我希望 :shortcode 返回输入到各自表单字段中的 :package + :pins 值的串联值。
我该怎么做?
编辑以显示用于将其实现为“答案”的代码:
$('#package_pins').blur(function() {
var combined = $('select#package_package_type_id option:selected').text() + $('#package_pins').val();
$('#package_shortcode').val(combined);
});
将此代码添加到我在 app/assets/javascripts 目录中的“packages.js”中。
请注意,因为 package_type 选择器在模型中拉入了 belongs_to 记录,所以选择选项会像这样填充:
<select id=package_package_type_id name="package[package_type_id]">
<option value="551">FFG</option>
<option value="552">FFC</option>
<option value="553">FTA</option>
</select>
我想从“FFG”文本中获取什么,而不是值“551”,在这种情况下,它是来自 ActiveRecord 的记录 ID。我可以通过使用 option:selected').text() jquery 代码来做到这一点。
再次感谢@maprihoda 为我指明了正确的方向!
【问题讨论】:
标签: ruby-on-rails view hidden-field