348 messaggi dal 10 marzo 2013
Ciao a tutti.

ho questo problema: in pratica quando inserisco il controllo Requiredfile validator ho il seguente errore:

WebForms UnobtrusiveValidationMode richiede un oggetto ScriptResourceMapping per 'jquery'. Aggiungere un oggetto ScriptResourceMapping denominato jquery (distinzione tra maiuscole e minuscole).

Non so da cosa dipenda, la text box sul quale devo effettuare il controllo e cosi fatta : <asp:TextBox ID="TxtDataAffiliazione" runat="server" Width="80px"></asp:TextBox>
<asp:RequiredFieldValidator ID="Requiredfile" runat="server" Text="required" ControlToValidate="TxtDataAffiliazione"></asp:RequiredFieldValidator>
<asp:CalendarExtender ID="TxtDataAffiliazione_CalendarExtender" runat="server" TargetControlID="TxtDataAffiliazione">
</asp:CalendarExtender>

avetew una solozione?

Grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Mario,
ci è capitato di parlare di quell'errore in questa discussione:
http://forum.aspitalia.com/forum/post/403620/Piccolo-Chiarimento-Errore-UnobtrusiveValidationMode.aspx

In alternativa, se volessi usare la validazione unobtrusive con jQuery, segui le indicazioni del punto 3. in questo articolo
http://www.campusmvp.net/blog/unobtrusive-validation-in-asp-net-4-5

ciao,
Moreno

Enjoy learning and just keep making
348 messaggi dal 10 marzo 2013
Ciao Moreno ho risolto aggiungendo la seguente riga di codice:
<appSettings>
<add key="ValidationSettings:UnobtrusiveValidationMode" value="none"> </add>
</appSettings>

Quindi in questo caso utilizzando la validazione classica.

il problema ora e' un'altro:
in pratica con crhome e firefox se io clicco per un paio di volte mi appare la finestra di popup, con una spunta che dice "impedisci alla pagina di creare altre finestre di dialogo". se io la spunto è come se il controllo non servisse a niente. Cioe' lo bypassa e fa quello che non deve.
C'e' la possibilità di eliminare questo comportamento?

Grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao,

Oiram ha scritto:

è come se il controllo non servisse a niente

Non è un problema se consideri lo scopo della validazione lato client: aiutare l'utente a compilare correttamente il form.
Nel momento in cui l'utente ci rinuncia disabilitando il messaggio di avviso, o manipolando il codice HTML della pagina o disabilitando il javascript, allora è una questione che riguarda lui soltanto.

Tu devi sempre e comunque verificare anche lato server che i dati che la pagina ha ricevuto siano buoni, e questo lo fai controllando il valore di Page.IsValid. Se è true, allora proseguirai con l'operazione, altrimenti no.
Lo scopo della validazione server è diverso: aiutare te, lo sviluppatore, a capire se quei dati possono essere elaborati (ad esempio: salvati in un database).

Questo video ti fa capire perché è importante ricorrere a Page.IsValid e, al contempo, quanto sia facile bypassare la validazione client.
https://www.youtube.com/watch?v=cDuQ0vPgrkM

ciao,
Moreno
Modificato da BrightSoul il 25 ottobre 2014 14.44 -

Enjoy learning and just keep making
348 messaggi dal 10 marzo 2013
Ciao Moreno.
Grazie per i consigli che, come sempre sono utilissimi.
Un'altra cosa: quello che non riesco a capire é, come faccio dopo che il programma ha bypassato il controllo lato client a visualizzare un messaggio che comunque ti costringa a compilare quel campo. Con IE e Firefox ho creato una cosa tipo la seguente:

if TxtDataAffiliazione.page.IsValis = false then
TxtDataAffiliazione.backcolor = drawin.gcolor.red
label1.Visible = True 'ritorna il messaggio Required
TxtDataAffiliazione.Focus()
Return

Questa cosa mi va anche bene, ma, non funziona con Chrome e non so con Safari e Opera.

Comunque prefirerei un messaggio di errore.

Suggerimenti? (sicuramente si)

Grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao, prego!

Oiram ha scritto:

come faccio dopo che il programma ha bypassato il controllo lato client a visualizzare un messaggio

Lascia che se ne occupi il RequiredFieldValidator. Devi giusto impostare il suo attributo ErrorMessage. Sia che la validazione avvenga lato client o lato server, vedrai apparire il messaggio nel punto in cui hai messo il validator.

Puoi anche aggiungere un controllo ValidationSummary in fondo al form, e lì apparirà il riepilogo di tutti gli errori verificatisi.

ciao,
Moreno

Enjoy learning and just keep making
348 messaggi dal 10 marzo 2013
Ciao Moreno

Allora dovrei gia aver fatto tutto.

Grazie 1000

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.