2012-02-23 9 views
5

Tomé un control de código de imagen en mi página:Cómo hacer el control de DotNetNuke Captcha para mostrar un error si se deja en blanco

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

si código de imagen no es correcta se mostrará el mensaje de error, pero si se queda Muestra en blanco no hay error. ¿Hay alguna manera de hacer que muestre un error cuando está en blanco?

gracias

+3

No tengo tiempo para una buena respuesta aquí, así que voy a dejar esto como un comentario. Querrás hacer este lado del cliente, creo. Establezca ClientIDMode = "static" en el control de captcha. Luego, dele un cssclass = "CaptchaRequired". Luego, use un jquery para establecer un campo requerido $ (". CaptchaRequired"). Next(). Next() (Esto seleccionará el cuadro de texto). Aquí hay una gran biblioteca de validación: http://docs.jquery.com/Plugins/Validation –

Respuesta

0

Hmm Iam no estoy seguro, pero me gustaría probar:

asp:RequiredFieldValidator 

allí se puede entrar en las propiedades:

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

tal vez usted tiene que establecer la siguiente propiedad en el código de imagen control:

CausesValidation="True" 

Esto también funciona en el lado del cliente.

Espero que esto ayude. mis mejores deseos, nadie.

+0

no funciona para mí :( – atabrizi

0

Esto funcionó para mí:

1) Añadir un nombre de clase CSS para el control de código de imagen (es decir CssClass = "código de imagen")

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

2) Crea una función 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) Llame a la función en el botón de enviar:

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

ACTUALIZACIÓN: Es posible que deba probar si el valor de CAPTCHA es válido en el lado del servidor (es decir, ctlCaptcha. IsValid); de lo contrario, puede escribir cualquier carácter que desee y lo aceptará. – inciph

Cuestiones relacionadas