我需要使用Ajax保存到我的数据库。我有这个代码,但无法解决问题。感谢所有帮助。
查看:
<div class="modal fade" id="modal_add_item" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h3 class="modal-title">Add New Item</h3>
</div> <!-- end of modal header -->
<div class="modal-body form">
<form class="form-horizontal" action="#" id="form_add_item" method="POST">
<div class="form-group">
<label class="control-label col-md-3" for="item_name">Item Name</label>
<div class="col-md-9">
<input type="text" name="new_item" placeholder="Item Name" class="form-control" required>
</div>
</div>
</form>
</div><!-- end of modal-body -->
<div class="modal-footer">
<button type="button" id="save" onclick="add_new_item()" class="btn btn-primary">Save</button>
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
</div><!-- end of modal footer -->
</div><!-- end of modal content -->
</div><!-- end of modal dialog -->
</div> <!-- end of modal -->
function add_new_item(){
var url="<?php echo site_url('accounting/add_item')?>";
$.ajax({
url:url,
type:"POST",
data:$('#form_add_item').serialize(),
datatype:"JSON",
success:function(data){
// alert(data);return false;
$('#modal_add_item').modal('hide');
},
error:function(jqXHR, textStatus, errorThrown){
alert('Error: '+textStatus);
// console.log(data);
}
});
}
控制器:
public function add_item(){
$date=new DateTime();
$item_name=$this->security->xss_clean($this->input->post('new_item'));
$added_by=$this->session->userdata('username');
$date_added=$date->format('Y-m-d');
$data=array(
'item_name'=>$item_name,
'added_by'=>$added_by,
'date_added'=>$date_added,
);
$result=$this->item_name->add_item($data);
echo json_encode(array('status'=>TRUE));
}
MODEL:
public function add_item($data){
// $this->output->enable_profiler(TRUE);
$this->db->insert($this->table,$data);
return $this->db->insert_id();
}
当我使用
时success:function(data){
alert(data);return false;
// $('#modal_add_item').modal('hide');
}
我实际上可以在警告框中获取我需要的数据,但不知何故它不会保存到数据库中。