如何使用ajax检查验证码而不刷新

时间:2014-11-02 23:22:31

标签: javascript jquery html ajax

我试图用Ajax检查验证码时遇到问题! 表格

<img src="captcha.php" width="100px"/>
<input size="20" id="rand" type="text" name="rand">

JS

$("#rand").keyup(function() {
var rand = $("#rand").val();
if(rand != rand2)
{
        $("#rand").removeClass('object_error'); // if necessary
        $("#rand").addClass("object_ok");
        $("#status5").html('<img src="tick.gif" align="absmiddle">');
}
else
    {
    $("#status5").html('<font color="red">Wrong Captcha</font>');
    $("#rand").removeClass('object_ok'); // if necessary
    $("#rand").addClass("object_error");
    }
}); //rand

rand!= captcha如何制作 而验证码在不同的文件中!

1 个答案:

答案 0 :(得分:1)

您无法在客户端进行验证码检查。您确实需要一个服务器端脚本来为您进行检查。然后,您需要使用ajax来调用具有用户数据的服务器端脚本,其他加密数据需要在服务器端进行验证。

ajax调用看起来像这样:

$.post( 'captcha-verifier.php', <user+captcha-data> ).done(function(data) {
    //check 'data' for verification result
    //decide next step
});

这段代码需要包含在事件处理程序中,当用户指示他们已完成输入输入时,例如按钮点击,该事件处理程序将被触发。例如:

$(function() {
    $('.some-button').on('click', function() {
        //gather data for ajax call if necessary
        //make ajax call above
    });
});