【发布时间】:2019-09-10 04:45:30
【问题描述】:
当使用 ajax codeigniter 验证不工作提交表单时,请解决这个问题我从上周开始面临这个问题 我用于提交表单的 jQuery 代码
$(function() {
$("#registratiom_form").on('submit', function(e) {
e.preventDefault();
var contactForm = $(this);
$.ajax({
url: contactForm.attr('action'),
type: 'POST',
data: contactForm.serialize(),
success: function(response){
}
});
});
});
控制器
public function add_account() {
if($this->form_validation->run('add_account')) {
$post = $this->input->post();
unset($post['create_account_submit']);
$this->load->model('Frontendmodel', 'front');
if($this->front->add_user($post)){
$this->session->set_flashdata('message', 'Account Created Successfully !');
$this->session->set_flashdata('message_class', 'green');
}
return redirect('Frontend/login');
} else {
$this->login();
}
}
【问题讨论】:
-
请添加
console.log(contactForm)以检查该变量中存储的内容。 -
是的,它存储了正确的值,即使我得到成功消息响应也没有问题,但我使用 codeigniter 的验证不适用于 ajax
-
你的 ajax 和 php 没有响应的“成功消息响应”是什么意思。此外,使用 ajax 时重定向 (
redirect('Frontend/login');) 或在 php 中显示视图 ($this->login()) 是不正确的。您应该只给它一个 text/json 响应,您可以在成功/错误 js 部分中使用/解析它。如果您想以当前的方式使用它,那么您不妨完全放弃 ajax……再一次,当情况并非如此时,您将 ajax 视为普通的 php 提交。我建议您在网上查找示例。
标签: php jquery html ajax codeigniter