2009-09-26 11 views
7

Ho letto here che qualsiasi validatore ASP.NET ha una proprietà denominata: "isvalid". Questa proprietà può essere utilizzata sul lato client per verificare se il validatore ha superato con successo la convalida o meno.L'accesso è una proprietà non valida dei validatori ASP.NET in Javascript

ho cercato di accedere a questa proprietà come segue, ma per qualche motivo il codice di fallire:

alert (. Document.getElementById ("validator_clientID") isValid);

Avete qualche idea del perché questo non funziona?

+0

Si prega di inviare la dichiarazione di convalida, insieme con il vostro completo JavaScript. Inoltre, chiarisci cosa intendi con 'senza fortuna'. Che errore ricevi? Visualizzare lo stato corrente dell'attributo isvalid usando il metodo che hai fornito ha funzionato per me. Sospetto che l'id che stai utilizzando (validator_clientID) non sia corretto. – Phaedrus

+0

Ho provato ad accedervi in ​​questo modo e funziona: bool flag = validatorname.isvalid; Per qualche motivo, l'accesso a isvalid tramite l'oggetto direct era accessibile. Ma non so perché ottenere l'elemento usando getElementById non ha recuperato l'oggetto. Ho provato l'evento utilizzando l'ID del validatore, non il ClientID, ed è ancora inaccessibile. Ho un valore indefinito. – mohammedn

risposta

2

ho trovato lo stesso!

provare questo document.getElementById('XXX').Validators[0].isvalid E 'di lavoro per me

3

Non penso che l'isvalid funzioni su un controllo di validazione direttamente come questa è una funzione di convalida lato server. È possibile attivare un controllo del validatore per la pagina corrente o il gruppo di convalida utilizzando la funzione javascript lato client Page_ClientValidate. È possibile specificare facoltativamente un nome di gruppo di convalida un parametro. Questo restituirà true se passa la validazione.

Potete anche guardare le funzioni lato client più disponibili e il modo in cui mappare le funzioni lato server su MSDN all'indirizzo:

http://msdn.microsoft.com/en-us/library/yb52a4x0.aspx

+0

@mnour solo a seguire, hai mai capito? – Kelsey

+0

Questo ha funzionato per me. Assomiglia a ... 'var isValid = Page_ClientValidate();' – Homer

0

ricordarsi di chiamare

IsValid 

invece

isvalid 

(può variare)

0

Sul lato client JavaScript:

var controlIsValid = this.document.getElementById ("validatorID"). Attributes.isvalid.value;

Problemi correlati