2011-12-08 10 views
9

In una precedente applicazione MVC 2.0, ho incluso (nel mio Site.Master) un riferimento al file CDN di jquery.validate.min.js per tutta la mia convalida lato client.MicrosoftMvcValidation.js VS jquery.validate.js (Bassistance)

Ora sono la creazione di un progetto MVC 3.0 e sono un po 'confuso con la quantità di articoli scritti su “how to use client-side validation using MicrosoftMvcValidation.js”.

Nella maggior parte (se non tutti) gli articoli, quando vedo un riferimento alla MicrosoftMvcValidation.js anche io vedi un riferimento a jquery.validate.js che è un po 'di confusione (considerando, in passato, ho usato solo il file di bassistance).

Quindi le mie domande sono:

  • Qual è la differenza tra questi due file?
  • Esistono problemi/vantaggi noti nell'utilizzare l'uno sull'altro?
  • All'interno della cartella "Scripts", per impostazione predefinita, sembra che entrambi i file ci siano ma perché? Ci danno la scelta o lavorano mano a mano ?

Qualsiasi aiuto faccia luce su questo sarebbe fantastico!

Grazie in anticipo!

risposta

9

MVC3 supporta due modalità di validazione lato client:

  • classici di validazione usando MicrosoftMvcValidation.js
    Per attivare questa, chiamano Html.EnableClientValidation() prima Html.BeginForm().

  • convalida discreto utilizzando jquery.validate.js e jquery.validate.unobtrusive.js (nuove da MVC3)
    A tal fine, aggiungere il seguente settinsg al web.config:

    <appSettings> 
        <add key="ClientValidationEnabled" value="true" /> 
        <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
    </appSettings> 
    
+0

Ok in modo così sostanziale, tutti questi file sono forniti nella cartella * Scripts * per darti la scelta tra M $ 's way o Bassistance's right? Ci sono problemi noti nell'usare l'uno o l'altro o tutto dipende dalle preferenze? Grazie SLaks – Vlince

+2

@Vince: corretto. MVC3 è più nuovo e più pulito; i vecchi script sono forniti per compatibilità con i progetti MVC2 esistenti. – SLaks

+0

Grazie a SLaks, continuerò sicuramente ad utilizzare l'approccio jQuery per le ragioni che ha menzionato Stephen. Grazie! – Vlince

6

MVC2 ha fornito la scelta tra la convalida lato client di Microsoft o la convalida di jQuery.

MVC3 continua, ma fornisce solo una convalida non invadente (ovvero nuove funzionalità di convalida HTML5) se si passa alla rotta jQuery.

In entrambi i casi, il parere prevalente sembra essere che jQuery sia la scelta migliore, in quanto è più facile da estendere e più semplice da utilizzare. Non è necessario includere entrambi gli script nel progetto o nella pagina Web: in genere, ne scegli uno e l'altro.

+0

In effetti, la rotta jQuery sembra una scelta migliore. Ancora più importante se si prevede di utilizzare anche le nuove funzionalità di convalida HTML5. Grazie Stefano. – Vlince

Problemi correlati