2010-02-12 37 views
9

Tôi muốn hiển thị nút nhưng ở trạng thái bị tắt, để hiển thị cho người dùng rằng họ đã lưu một mục.đường ray button_to: disabled => true vẫn hiển thị nút

Tôi hiện sử dụng một cái gì đó như:

<%= button_to 'Save', :disabled => item.is_saved? %> 

Các html tạo ra trông giống như:

<form class="button-to" action="/results/save_item/748?class=buttons&amp;disabled=true" method="post"> 

<div><input type="submit" value="Save"> 
<input type="hidden" value="+TKyrnA9idfmCkwDycLjHIkSLNou6NMt8R4TI73RezU=" name="authenticity_token"> 
</div> 
</form> 

này vô hiệu hóa các hành động bằng cách thiết lập người khuyết tật = true tùy chọn. Tuy nhiên, nút vẫn được hiển thị. Có cách nào để hiển thị nút ở trạng thái bị vô hiệu hóa không nếu điều kiện là đúng?

nhờ

Trả lời

5
<% if item.is_saved? %> 
    <%= button_to 'Save' %> 
<% end %> 
+0

Tôi muốn vô hiệu hóa tính năng này. Trong mã bạn đề xuất, nút này sẽ không xuất hiện nếu is_saved? là đúng. – truthSeekr

+0

Trên mã ban đầu của bạn, nút không được hiển thị nếu is_saved là đúng. Vì vậy, cho tôi biết các tiêu chí mà bạn muốn xin vui lòng. –

+0

Xin lỗi, tôi đoán tôi chưa đủ rõ ràng. Tôi muốn hiển thị một nút nhưng ở trạng thái bị vô hiệu, đến cho người dùng biết rằng họ đã lưu nó. Thay vào đó, mã tôi đăng ban đầu không có nút nào cả. Tôi muốn có một nút nhưng ở trạng thái bị vô hiệu hóa. – truthSeekr

20

Bạn phải chỉ định URL đầu tiên hoặc để cho nó trống rỗng. Trong trường hợp của bạn: bị vô hiệu hóa là một param [: disabled].

<%= button_to 'Save', {}, :disabled => item.is_saved? %> 
Các vấn đề liên quan