2012-02-23 10 views
5

ho preso un controllo captcha sulla mia pagina:Come rendere il controllo DotNetNuke Captcha per mostrare un errore se lasciata vuota

<dnn:CaptchaControl ID="CaptchaControl1" runat="server" CaptchaHeight="50px" CaptchaWidth="150px" ErrorMessage="incorrect"  /> 

se captcha non è corretto verrà mostrato il messaggio di errore, ma se lasciato spettacoli vuote no error.è un modo per farlo mostrare un errore quando è vuoto?

grazie

+3

Non ho tempo per un'ottima risposta qui, quindi lascerò questo come commento. Dovrai fare questo lato cliente, credo. Imposta ClientIDMode = "statico" sul controllo captcha. Quindi, dargli un cssclass = "CaptchaRequired". Quindi, usa un jquery per stabilire un campo obbligatorio $ (". CaptchaRequired"). Next(). Next() (Questo selezionerà la casella di testo). Ecco una grande libreria di convalida: http://docs.jquery.com/Plugins/Validation –

risposta

0

Hmm Iam non è sicuro, ma vorrei provare:

asp:RequiredFieldValidator 

c'è possibile inserire le proprietà:

ControlToValidate="yourCaptchaControlID" 
Display="Dynamic" 
Enabled="True" 

forse bisogna impostare la seguente proprietà al vostro captcha controllo:

CausesValidation="True" 

Anche questo sta funzionando sul lato client.

spero che questo aiuti. migliori saluti, nessuno.

+0

non funziona per me :( – atabrizi

0

questo ha funzionato per me:

1) Aggiungere un nome di classe CSS al controllo Captcha (cioè CssClass = "captcha")

<dnn:captchacontrol id="ctlCaptcha" cssclass="Normal captcha" runat="server" /> 

2) Creare una funzione javascript:

function validateCaptcha() { 
    var captValue = $('.captcha input').val(); 
    if (captValue == '') { 
     alert('You must enter a value for the CAPTCHA control.'); 
     return false; 
    } else { 
     return true; 
    } 
} 

3) Chiamare la funzione sul pulsante di invio:

<asp:linkbutton id="btnUpdate" runat="server" OnClientClick="return validateCaptcha()">Update</asp:linkbutton> 
+0

UPDATE: potrebbe essere necessario verificare se il valore CAPTCHA è valido sul lato server (es. CtlCaptcha. IsValid) altrimenti puoi digitare qualsiasi carattere che desideri e lo accetterà. – inciph

Problemi correlati