我在rails上的ruby中有一个表单,其中包含一个包含不同类别名称的下拉列表。
<td>
<div class="div1">
<%= f.collection_select(:category_id, Category.all, :name, id: 'category_select', :include_blank => '---select waste category---') %>
</div>
</td>
以及应显示所选类别的类别代码的文本字段。
<td colspan="4"><%= f.text_field :category_id, id: 'name_text_field' %></td>
这是我获取数据的表格:
mysql> desc categories;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| parent_id | int(11) | YES | | NULL | |
| code | varchar(255) | YES | | NULL | |
| name | varchar(255) | YES | | NULL | |
| created_at | datetime | NO | | NULL | |
| updated_at | datetime | NO | | NULL | |
+------------+--------------+------+-----+---------+----------------+
这是我要发送数据的表格,我的表单旨在:
+---------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| quantity | int(11) | YES | | NULL | |
| category_id | int(11) | YES | MUL | NULL | |
| package_id | int(11) | YES | MUL | NULL | |
| created_at | datetime | NO | | NULL | |
| updated_at | datetime | NO | | NULL | |
+---------------+--------------+------+-----+---------+----------------+
当我从保管箱中选择类别名称时,有人可以帮我解决如何在文本框中显示相应的类别代码吗?
非常感谢提前!!!
答案 0 :(得分:0)
做这样的事情。我认为你的collection_set中有一个拼写错误。使用以下代码
do
这将在文本框中显示从下拉列表中选择内容的类别名称。
希望有所帮助
答案 1 :(得分:0)
感谢gowtham的想法,我设法解决了我的问题
这就是我所做的:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.min.js"></script>
<script type="text/javascript">
$(function() {
$("#category_id").on("change", function() {
$("#code_textfield").val($("#_category_id").val());
});
});
</script>
我的文字字段:
<%= f.text_field :category_id, :id => "code_textfield" %>
和我的Dropbox:
<%= f.collection_select(:category_id, Category.all, :code,:name, :include_blank => '---select waste category---') %>