私はcodeigniterを初めて使用しました。これはjquery ajaxで初めての作業です。CodeIgniterのJQuery AJax:nullを返すJSONデータ型
私は、情報をビューのスクリプトに渡すモーダルフォームを持っています。私が持っている問題は、ajaxがnull値を与えているということです。
私はスクリプトのデータを警告しようとしましたが、適切な値を表示していますが、データをjsonとしてコントローラに渡すと、それは失敗しているところです。私は何をすべきかわからない。あなたは何か考えていますか?ビューのスクリプトの
スニペット
$(function() { //add new user from modal
$('#adduser_modal').modal('show');
$('#adduser_modal').find('.modal-title').text('Add New User');
$('#addUser_form').attr('action', '<?php echo base_url() ?>Hgv_controller/addnewuser');
});
$('#saveuser_btn').click(function() {
var url = $('#addUser_form').attr('action');
$.ajax({
type: 'ajax',
method: 'post',
url: url,
data: data,
async: false,
dataType: 'json',
jsonpcallback: success
:
function (response) {
if (response.success) {
$('#adduser_modal').modal('hide');
$('#addUser_form')[0].reset();
}
}
});
は、ここでは、コントローラ
public function addnewuser()
{
$this->load->database();
//load model for crud
$this->load->model('Crud');
$result = $this->Crud->adduser();
$msg['success'] = false;
$msg['type'] = 'add';
if ($result) {
$msg['success'] = true;
}
echo json_encode($msg);
}
からのコードの抜粋だとここjsonpcallback
のモデル
public function adduser()
{
$field = array(
'username' => $this->input->post('hgv_username'),
'f_name' => $this->input->post('hgv_firstname'),
'l_name' => $this->input->post('hgv_lastname'),
'password' => $this->input->post('hgv_password'),
'user_type' => $this->input->post('hgv_type'),
);
$this->db->insert('hgv_user', $field);
if ($this->db->affected_rows() > 0) {
return true;
} else {
return false;
}
}
モデルに入っている投稿データをダンプまたは印刷しようとしましたか? –
を確認するか、print_r($ this-> input-> post())を試してみてください。出口;コントローラにモデルをロードしてコントローラ内のデータを取得したかどうかを確認してください。 –
1. 'ajax'は有効なhttpリクエストメソッド(' type: 'ajax'')ではありません。2. 'type'はエイリアスです3. 'async:false'は要求を同期させ、スクリプト/ UIをブロックします。4.' $ .ajax(...) 'オプションオブジェクトには構文エラー(不要な' jsonpcallback'プロパティ)があります。 – Andreas