2009-12-21 23 views

Trả lời

13

Phương thức select_tag không sửa đổi danh sách tùy chọn mà bạn vượt qua. Nếu bạn muốn một tùy chọn trống, bạn phải bao gồm nó trong danh sách các tùy chọn của bạn.

Nếu bạn đang sử dụng tùy chọn_for_select danh sách của bạn nên bắt đầu với mục trống, ví dụ: ["Please select", ''].

Nếu bạn chỉ cần đi qua html để select_tag chắc chắn rằng tùy chọn đầu tiên của bạn là:

<option value="">Please Select</option> 
10

Lưu ý rằng trong Ruby on Rails 3, select_tag() sẽ chấp nhận một :include_blank boolean luận (cùng với date_select và những thứ tương tự) .

+0

Điều này có phải là một 'boolean' hoặc bạn có thể vượt qua một String để nó sẽ được hiển thị? –

43

Trong Rails 3 có một tùy chọn :prompt cho select_tag:

select_tag "things", many_thing_as_options, :prompt => "Please select" 
+0

Brilliant! Cảm ơn! Tôi đã cố gắng để thêm một chuỗi với HTML để trợ giúp tùy chọn trước khi tôi tìm thấy câu trả lời của bạn. – manderson

+0

Không hoạt động cho tôi (3.0.20) – gamov

+1

Rất kỳ quặc, include_blank hoạt động trên select_tag nhưng nó không tôn trọng Chuỗi được truyền tới nó, vì vậy nó chỉ hiển thị một thẻ '

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