2010-02-12 8 views
9

Vorrei visualizzare un pulsante ma in uno stato disattivato, per mostrare all'utente che ha già salvato un elemento.rotaie button_to: disabled => true visualizza ancora il pulsante

ho qualcosa di simile attualmente utilizzati:

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

il codice HTML generato assomiglia:

<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> 

Questo disabilita l'azione impostando l'opzione disattivata = true. Tuttavia, il pulsante è ancora visualizzato. C'è un modo per mostrare il pulsante in uno stato disabilitato se la condizione è vera?

grazie

risposta

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

Mi piacerebbe averlo disabilitato. Nel codice che hai suggerito, il pulsante non appare affatto se is_saved? è vero. – truthSeekr

+0

Sul codice originale il pulsante non viene visualizzato se is_saved è true. Allora dimmi i criteri che vuoi, per favore. –

+0

Scusa, credo di non essere stato abbastanza chiaro. Vorrei visualizzare un pulsante, ma in uno stato disabilitato, per mostrare all'utente che lo hanno già salvato. Invece, il codice originariamente pubblicato non ha un pulsante. Vorrei un pulsante ma in uno stato disabilitato. – truthSeekr

20

è necessario specificare l'URL primo o lasciarlo vuoto. Nel tuo caso: disabilitato è un parametro [: disabilitato].

<%= button_to 'Save', {}, :disabled => item.is_saved? %> 
Problemi correlati