Ajax 表单验证:无法访问与字段名密码对应的错误消息

Ajax 表单验证:无法访问与字段名密码对应的错误消息,ajax,forms,codeigniter,validation,authentication,Ajax,Forms,Codeigniter,Validation,Authentication,我在codeigniter网站的firebug中发现了这个错误 无法访问与字段名密码对应的错误消息 我搜索过,发现当代码中有错误时,错误会弹出,但没有一个问题像我的一样。 你能帮忙吗 登录控制器 'trim|required||xss_clean|callback_password_check['.$username.'|min_length[4]|max_length[20]' 用户模型 阿贾克斯 形式 您在控制器中丢失了方括号 'trim|required||xss_clean|callb

我在codeigniter网站的firebug中发现了这个错误 无法访问与字段名密码对应的错误消息 我搜索过,发现当代码中有错误时,错误会弹出,但没有一个问题像我的一样。 你能帮忙吗

登录控制器

'trim|required||xss_clean|callback_password_check['.$username.'|min_length[4]|max_length[20]'
用户模型

阿贾克斯

形式


您在控制器中丢失了方括号

'trim|required||xss_clean|callback_password_check['.$username.'|min_length[4]|max_length[20]'
应该是

'trim|required||xss_clean|callback_password_check['.$username.']|min_length[4]|max_length[20]'

经过搜索和调试,我发现问题出在这一行

 $this->form_validation->set_rules('password', 'Password','trim|required||xss_clean|callback_password_check['.$username.']|min_length[4]|max_length[20]');
应该是

 $this->form_validation->set_rules('password', 'Password','trim|required|xss_clean|callback_password_check['.$username.']|min_length[4]|max_length[20]');
问题在于required和xss clean之间的|
谢谢

两个用户名在您的表单中存档在您的html中,您有两个相同名称=用户名和id=用户名的输入。请验证两个表单元素用户名,并告诉我当前的情况。您使用的是什么版本的codeigniter?我这样问是因为xss_clean在v3的表单验证中不可用。一个额外的管道|后面不需要问题,这里缺少一个结束括号回调_password_check['.$username.'|可能确实是问题@Heshamwatany该打字错误应该是一个注释而不是答案。我的声誉级别不允许我评论,peace
'trim|required||xss_clean|callback_password_check['.$username.']|min_length[4]|max_length[20]'
 $this->form_validation->set_rules('password', 'Password','trim|required||xss_clean|callback_password_check['.$username.']|min_length[4]|max_length[20]');
 $this->form_validation->set_rules('password', 'Password','trim|required|xss_clean|callback_password_check['.$username.']|min_length[4]|max_length[20]');