[英]Codeigniter ajax form validation
我实现了ajax表单验证。 但是,即使所有输入类型都有值。 它显示$this->form_validation->run()
false
。 我没有如何解决此问题。
控制器代码
$this->form_validation->set_rules('first_name', 'First Name', 'trim|required');
$this->form_validation->set_rules('last_name', 'Last Name', 'trim|required');
$this->form_validation->set_rules('balance', 'Balance', 'trim|required|numeric');
if ($this->form_validation->run() == FALSE) {
echo validation_errors();
}else{
}
AJAX电话
$('#updateUsersInfo').on('click',function(){
$.ajax({
url:"<?php echo base_url();?>admin/updateUserData",
type: "POST",
dataType: 'json',
data: {'submit_token': $('#token_id').val()},
success:function(data){
$('#bindErrors').text(data);
}
}) ;
});
查看代码
<form class="popupform" method="post">
<div class="error" id="bindErrors"></div>
<div id="bindSuccessMsg"></div>
<div class="row">
<div class = "col-md-8 col-md-offset-2">
<div class="col-md-8">
<div class="form-group">
First name <input type="text" class="form-control" placeholder="First Name" id="first_name" name="first_name" value="">
</div>
<div class="form-group">
Last name <input type="text" class="form-control" placeholder="Last Name" name="last_name" id="last_name" value="">
</div>
<div class="form-group">
Email <input type="email" id="email" class="form-control" readonly placeholder="Email address" name="email_address" value="">
</div>
<div class="form-group">
Balance <input type="number" id="balance" class="form-control" placeholder="Balance" name="balance" value="">
</div>
<div class="form-group">
<div class="radio" >
<label style="margin-right: 10px;">
<input type="radio" name="account_type" value="1" >Personal</label>
</div>
<div class="radio">
<label><input type="radio" name="account_type" value="3">Business</label>
</div>
</div>
<div class="form-group" style="clear:left; padding-top: 10px;">
<input type="hidden" name="user_id" id="user_id" value=""/>
<input type="submit" id="updateUsersInfo" class="btn tf-btn btn-default" value="Submit"/>
</div>
</div>
</div>
</div>
</form>
我已经使用CSRF令牌,但是现在在代码中不要考虑这一点。 除此之外,有人可以让我知道为什么即使字段包含有效数据也会出现错误。
我正在使用Codeigniter 3.0.3
在这一行中,echo validate_errors(); 您要做的是echo json_encode(validation_errors()),因为在ajax调用中,您使用的是dataType:“ json”,而success:function(data){console.log(data); 只要尝试这些事情,它将起作用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.