Sto usando asp.net mvc 3, jquery validate, javascript non ostruito e annotazioni di dati.
Ho notato che dì la tua nella casella di testo A che è unrichiesto e fare clic su di esso, nessun testamento convalida come. È come se il javascript non fosse entrato in gioco. Se fanno clic sul pulsante di invio, viene visualizzata la convalida.
Quindi, se tornano alla casella di testo A e iniziano a digitare, la convalida scompare. Quindi la validazione lato client sta funzionando.
Mi chiedo se sia qui per ottenere la convalida del lato client da avviare subito?
risposte:
3 per risposta № 1Ecco cosa sta succedendo e perché.
- La casella di testo inizia come vuota. Si attiva e disattiva la scheda e non si verifica alcuna convalida (a meno che non si invii invio)
- Inserisci alcuni valori Si attiva la scheda e ora si attiva la convalida (ma la casella di testo ha un valore, quindi nessun errore)
- Tornare alla casella di testo e cancellare il valore. Si estrae e ora si ottiene il messaggio di convalida.
La ragione di questo comportamento è che non vogliamo iniziare a spuntare degli errori su tutto il modulo solo perché l'utente non può decidere quale campo vogliono iniziare a compilare per primo.
1 per risposta № 2
È così che è stata implementata la convalida lato client discreto ASP.NET MVC 3 Se si desidera modificare questo comportamento, è sempre possibile scrivere le proprie regole e opzioni di convalida personalizzate con jquery.validate
collegare:
$("#myForm").validate({
rules: {
name: {
email: true
}
}
});