CI 自带表单验证 + jquery ajax 注册验证
本帖最后由 yzx8819 于 2014-7-4 12:40 编辑最近开始研究CI,今天研究到注册登录验证。翻看论坛资料后发现,CI自带的表单验证是后台的。但是我个人比较追求前端的体验,故想把jquery+CI自动表单验证相结合。让用户每 blur 一个 input 时都会得到 CI自动表单验证 反馈回的 validation_errors();
V部分:把input的值传给C
<?php echo form_open('login/signin') ?>
<p>用户名:<?php echo form_input('name','','id="name"') ?></p><div id="ninput"></div>
<p><?php echo form_submit('submit','登陆','id="submit"')?></p>
<?php echo form_close() ?>
<br /><br />
<?php echo anchor('login/register','注册')?>
<script src="http://libs.baidu.com/jquery/1.7.2/jquery.min.js"></script>
<SCRIPT LANGUAGE="JavaScript">
$(document).ready(function() {
$('#name').blur(function(){
var username = $("#name").val();
$.ajax({
type:"POST",
url:"<?php echo base_url().'login/recheckme'?>",
data:{name:username},
success:function(data){
//alert(data);
$("#ninput").html(data);
}
})
})
});
$('#submit').click(function(){
return false;
});
</SCRIPT>
C部分:
function recheckme(){
$_POST['name']=$this->input->post('name');
$this->form_validation->set_rules('name','用户名','trim|required');
if ($this->form_validation->run() == FALSE){
echo validation_errors();
}
}
最后成功把错误信息传回来了!;
页:
[1]