2012-06-17 17 views
12

Sto cercando di includere un link in un'etichetta forma in quanto tale:Includi collegamento nell'etichetta modulo?

<%= form.check_box 'eula' %> 
<%= form.label 'eula', "I agree to the <a href='#' id='eula-link'>EULA</a>", class: 'label-checkbox' %> 

Rails scrive il codice HTML fuori, come probabilmente dovrebbe, ma come faccio a fare questo? Facendo clic su EULA si apre un popup JS. Stavo pensando di incorporare un link_to lì dentro in qualche modo?

+0

Devi solo usare il link_to' helper 'nella stringa dell'etichetta modulo, http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to – Norto23

risposta

18

Utilizzando html_safe con parentesi renderà il codice html, in questo modo:

<%= f.input :eula, :as => :boolean, label: ("I agree to the #{link_to 'Terms of Service', terms_path}.").html_safe %> 
+1

credo dovresti usare 'sanitize' invece di' html_safe' – mecampbellsoup

+1

Come aggiungerei un'icona FontAwesome in 'link_to'? – bcackerman

+0

'label: sanitize (" Accetto il # {link_to ((fa_icon ('check') + 'Termini e condizioni'), terms_and_conditions_path, target: '_blank')}. ", Tag:% w (ai), attributi:% w (classe target href)) ' – blnc

0

cercare "Acconsento al # {link_to 'EULA', #,: id => 'EULA-link'}"

+3

non funziona, ancora senza caratteri di escape –

1

19 modi provati, con il collegamento ipertestuale codificato o html_safe che sostituisce i trattini nell'URL ???

Questo è ciò che ha funzionato per me

<%= f.label :cookies do 
     "Do you agree to our #{link_to('Cookies Policy', 'http://www.your-­url.co.uk/privacypolicy')}".html_safe 
end %> 

L'uso specifico di "e 'appare significativo.

1

La risposta da Jenson-button-evento quasi lavorato per me, ma ha richiesto un cambiamento nel posizionamento di una parentesi vicino a caricare senza errori

Per me è stato risolto il problema qui sotto, dopo la "Politica dei cookie" si noti la parentesi chiusa, piuttosto che dopo il percorso del collegamento stesso

<%= f.label :cookies do 
     "Do you agree to our #{link_to('Cookies Policy'), 'http://www.your-­ url.co.uk/privacypolicy'}".html_safe 
end %> 
Problemi correlati