是否可以从“输入框”等视图元素中调用位于控制器中的验证功能。例如:鼠标离开时gmail注册页面用户名字段验证...
答案 0 :(得分:0)
你需要使用ajax来做到这一点。
$.ajax();
http://api.jquery.com/jQuery.ajax/
$.ajax({
url: "url/to/controller/validationaction",
success: function(data){
//do something since validation
//passed.
},
error: function(d,r,x){
//do something since validation
//failed.
}
});
是一个非常非常有用的例子。
您的控制器将使用
返回http失败状态代码$this->output->set_status_header(code, 'text');
Link to CI's Output Documentation
如果验证失败,否则return TRUE;
或回显消息的json_encoded数组..
$message = array(
'message' => 'Success!',
'type' => 'succes',
);
echo json_encode($message);
您还可以依赖jquery / javascript来处理验证客户端,这样可以防止您只是为了验证用户的输入而发出http请求。
一个流行的插件是:http://bassistance.de/jquery-plugins/jquery-plugin-validation/
应该注意的是,如果用户禁用了jquery / javascript,你需要有一个故障安全方法,它将通过codeigniters表单验证帮助器进行验证。