Sto ricontrollando la validazione di un sito che ho scritto usando yii e la vecchia estensione Yii-booster, sono riuscito a togliere tutti i motivi di mancata validazione del codice html prodotto.
L’unica parte non validabile per il w3c è nelle form, in pratica all’interno del tag label ho due input diversi di cui uno hidden avente id diversi. Ora so a cosa serve questo campo hidden ma nel mio caso (solito check accetta/rifiuta privacy) non serve a nulla quindi volevo eliminarlo.
Non si tratta come ovvio di una criticità, sappiamo tutti quanto quel validatore sia pignolo (ed il codice funziona bene su tutti i browser) ma avere una non validazione senza un motivo valido mi urta lievemente.
La soluzione ovviamente è quella. Quello che stavo chiedendo è se fosse possibile senza riscrivere la form a mano (usare CActiveForm o come nel mio caso TbActiveForm) velocizza di molto il processo di scrittura di una form: Validazione, controlli, estetica e tutto controllato dal model associato alla form.
Un workaround potrebbe essere riscrivere direttamente l’html solo per i checkbox “incriminati” ma sarebbe utile poter avere la possibilità di farlo tramite moduli helper.
La mia idea finale è andare ad utilizzare ovviamente TbActiveForm ma non gli helper per la generazione di eventuali checkbox ma scriverle direttamente a mano in quel caso. In questo modo dovrei ovviare al problema del doppio field dentro il label.