2010-10-13 23 views
10

ASP.NET 4.0 ha introdotto la proprietà 'ClientIDMode', che consente di specificare come vengono visualizzati gli id ​​dell'elemento html nell'output HTML.Validatori e problema ClientIDMode (ASP.NET)

Il mio progetto è attualmente impostato su 'Static' (la più breve/non contiene id gerarchia)

Quando si utilizza qualsiasi validatore (RequiredFieldValidator, RegularExpressionValidator ...), a meno che il controllo è la validazione in modo esplicito ha è di proprietà ClientIDMode: AutoID Ho ricevuto l'errore:

Input parameter 'controlId' cannot be an empty string.

È questo il comportamento previsto?

Modifica: Essendo un po 'stupido con il messaggio di errore, voleva che inserissi un ID sul Validator, cosa che ovviamente non faccio (a meno che non debba fare riferimento a questo).

Sembra ancora strano che non ci riesca per questo motivo.

risposta

3

Mi sono imbattuto in questo in un modo leggermente diverso: se il mio controllo utente aveva ClientIDMode="Static", ho ricevuto l'errore sui validatori che esistevano all'interno del controllo (non avevano tutti ID).

Una soluzione è quella di passare ClientIDModes sul controllo utente offensivo. Spero che questo ti aiuti!

Problemi correlati