2010-12-13 33 views

Trả lời

10

Các synatx cơ bản cho chọn là

select(object, method, choices, options = {}, html_options = {}) 

Tùy chọn là thay thế bởi các giá trị tùy chọn thả xuống và bạn có thể thay thế các html_options cho chiều rộng.

ví dụ: <% select("company", "branch_id", Branch.all.collect {|b| [ b.name, b.id ] }, { :prompt => "Select" }, {:class => "companySelect" })

Đối select_tag bạn có thể sử dụng

select_tag(name, option_tags = nil, options = {}) 

Đây là tùy chọn tương tự như html_options của chọn.

ví dụ: <%= select_tag 'company_name', options_for_select(get_company_name), :class => "select1"%>

Để biết thêm chi tiết xin vui lòng xem select Tagselect

+0

Xin chào! Tôi có thể xem tất cả các tùy chọn có sẵn cho 'html_options' và' options' ở đâu? –

+0

html_options thường được sử dụng là: multiple - cho phép nhiều lựa chọn,: disabled - vô hiệu hóa đầu vào,: size - set size,: class - xác định lớp, onclick - calls javascript onclick và key khác tạo thuộc tính HTML chuẩn. Đối với các tùy chọn bạn có thể kiểm tra http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-options_for_select – ssri

+0

Cảm ơn, nhưng tôi vẫn không hiểu cách đặt kích thước của lựa chọn cái hộp. ': size' không hoạt động đối với' select' (chỉ dành cho trường văn bản). Bạn có thể vui lòng xây dựng? –

14

Trong ý chính, tôi sử dụng:

<%= f.select(:my_select_name, [1,2,3,4,5], {}, :style => "width:70px") %> 

Hoặc nếu tôi đang sử dụng một cái gì đó như Twitter Bootstrap, tôi sử dụng một lớp:

<%= f.select(:my_select_name, [1,2,3,4,5], {}, :class => "col-md-1") %> 
+0

Cảm ơn, vì vậy hãy làm việc cho tôi. Bạn cũng có thể làm như thế này '<% = f.select (: foo_id, Foo.all.collect {| foo | [foo.name, foo.id,]}, {},: style =>" width: 250px ") ' – ksugiarto

+0

Cảm ơn nó cũng đã làm việc cho tôi. –

Các vấn đề liên quan