重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
验证码可以由动态页面来实现 ,单纯的jquery是实现不了的,你说的那种效果 可能就是利用jquery来判断验证码输入是否正确
创新互联长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为两当企业提供专业的网站设计制作、网站设计,两当网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
复制代码
代码如下:
var
wait=60;//时间
function
time(o,p)
{//o为按钮的对象,p为可选,这里是60秒过后,提示文字的改变
if
(wait
==
0)
{
o.removeAttr("disabled");
o.val("点击发送验证码");//改变按钮中value的值
p.html("如果您在1分钟内没有收到验证码,请检查您填写的手机号码是否正确或重新发送");
wait
=
60;
}
else
{
o.attr("disabled",
true);//倒计时过程中禁止点击按钮
o.val(wait
+
"秒后重新获取验证码");//改变按钮中value的值
wait--;
setTimeout(function()
{
time(o,p);//循环调用
},
1000)
}
}
视图:
复制代码
代码如下:
input
class="mem_btn
mem_btn26"
type="submit"
name="yt0"
value="点击发送验证码"
id="btn"
调用:
复制代码
代码如下:
echo
CHtml::ajaxSubmitButton('点击发送验证码',
CHtml::normalizeUrl(
array('/ajax/sendGetPassMobilCaptcha','zm_id'=$model-zm_id)
),
array('success'='function(result){
if(result==1){
$(".ys_98").html("验证码发送成功,请及时检查您的手机。");
time($("#yt0"),$(".ys_98"))
}else{
$(".ys_98").html("验证码发送失败,请重试,或联系管理员。");
}
}','data'="zm_id=".$model-zm_id."zm_mob=".$model-zm_mob."zm_name=".$model-zm_name
),
array('class'='mem_btn
mem_btn26'));
这是通过ajax实现的。jquery中多个函数实现ajax。比如说:
jQuery.post( url, [data], [callback], [type] )
第一个参数是处理验证的程序文件地址,第二个参数是要提交的数据,第三个是回调函数,请示的类型如json等。
假如验证码输入框的id属性为verify,验证验证码的文件为checkcode.php
$("#verify").blur(function(){
var verifycode=$("#verify").val();
$.post("checkcode.php",{verify,verifycode},function(data){
if(data=="1"){
alert("验证码正确");
}else{
alert("验证码错误");
}
})
})
//你可以把返回的结果显示在验证码输入框的后面,不用alert弹出框
检验验证码的checkcode.php文件内容如下:(假如存入session的验证码名为verify)
$verify=$_POST["verify"];
if($verify=$_SESSION["verify"]){
echo "1";
}else{
echo "0";
}
思路大致是这样,代码是不是正确,请测试 一下
使用jquery的ajax即可
例如一个img
img onclick="" /
这个onclick里面就可以ajax调用后台,后台生成验证码返回给前台即可
用到的正则意思就是6位的字母,数字,后台同样可以保证,只要在其中取即可。
;word=jsp+%D1%E9%D6%A4%C2%EB+yugi111ie=gbk
button type="button"获取验证码/button
script type="text/javascript"
$('button').on({
click: function() {
$that = $(this);
if(!$that.attr('disabled')) {
$that.css('background', '#ccc').attr('disabled', 'disabled');
var _t = 3,/*倒计时时间*/
_timer = setInterval(function() {
_t--;
$that.text(_t);
if(_t = 0) {
/*倒计时时间结束后 恢复默认*/
clearInterval(_timer);
$that.css('background', 'none').removeAttr('disabled').text('获取验证码');
}
}, 1000);
}
},
});
/script