Quindi ho un elemento di input come questo. L'elemento di avvolgimento riguarda, sai, una cosa visiva.Il campo "con errori" può essere collegato al genitore del tag di input che genera l'errore?
<div class="input-wrap">
<input class="blah-blah" />
</div>
Quando il <input>
contiene l'errore, sarà come questo:
<div class="input-wrap">
<div class="field-with-errors">
<input class="blah-blah" />
</div>
</div>
Ma quello che voglio fare è:
<div class="input-wrap field-with-errors">
<input class="blah-blah" />
</div>
ho trovato questa pagina, è molto vicino alla mia domanda
Rails 3: "field-with-errors" wrapper changes the page appearance. How to avoid this?
Ora so che posso buttare
config.action_view.field_error_proc = Proc.new { |html_tag, instance|
"#{html_tag}".html_safe
}
per evitare di fare un tag avvolgimento attorno al tag <input>
che ha un errore. Ma quello che voglio davvero fare è, ancora una volta, aggiungere la classe "field-with-errors" al genitore diretto del tag <input>
. Posso farlo? ActionView mantiene la struttura ad albero dei nodi DOM?
Hai trovato una soluzione? Sembra (per un principiante come me) impossibile da raggiungere. Probabilmente è necessario un altro helper come wrapper – GorillaApe
Ci sono alcune domande correlate nel menu laterale. Non sembra ancora una soluzione semplice per questo? Non so. http://stackoverflow.com/questions/5267998/rails-3-field-with-errors-wrapper-changes-the-page-appearance-how-to-avoid-t offre un buon suggerimento. Se non è possibile modificare il modello dalla funzione di supporto, magari aggiungendo un attributo dati e aggiungendo il nome della classe al genitore tramite JS? Sembra terribile ma potrebbe essere un modo per farlo ... – beatak
Ciao @beatak, nonostante sia passato un po 'di tempo, hai visto [quel commento] (https://stackoverflow.com/questions/5267998/rails-3-field- con-errors-wrapper-changes-the-page-appearance-how-to-avoid-t/8380400 # 8380400) da quella SO? Sembra che sia riuscito a farlo manipolando a livello di stringa .. – SanjiBukai