我正在 Codeigniter 中实现一个 ajax 联系表单。似乎无法弄清楚我的问题是什么。通过 Firebug 运行脚本时,jquery.min.js 中有一个 POST 错误,这似乎没有多大意义。也许我缺少语法错误?
这是我的ajax JS:
$(document).ready(function() {
//Ajax contact form
$('#submit').click(function() {
var form_data = {
first_name : $('.first_name').val(),
last_name : $('.last_name').val(),
email : $('.email').val(),
message : $('.message').val(),
ajax : '1'
};
$.ajax({
type : 'POST',
url : "http://localhost/web/hfs/home/contact",
async : false,
data : form_data,
success : function(msg) {
$('#left-container.thankyou').html(msg);
}
});
// end ajax
return false;
});
});
这是我的控制器功能:
public function contact() {
if ($this -> input -> post('ajax') == '1') {
$this -> form_validation -> set_rules('first_name', 'First Name', 'required|min_length[1]');
$this -> form_validation -> set_rules('last_name', 'Last Name', 'required|min_length[1]');
$this -> form_validation -> set_rules('email', 'Email', 'required|valid_email');
$this -> form_validation -> set_rules('message', 'Message', 'required|min_length[5]');
$this->form_validation->set_message('required', 'Please fill in the fields');
if ($this -> form_validation -> run() == FALSE) {
echo validation_errors();
} else {
echo "Thanks for contacting!";
}
}
}