2017-01-16 21 views
0
var dataString = JSON.stringify(formDara); 
    console.log(dataString); 
$.ajax({ 
    url: urL, 
    type: "POST", 
    cache: false, 
    data: dataString, 
    success: function (data) { 
     console.log(data); 
    } 
}); 

ここでは、formDataはオブジェクトです。 にconsole.log(dataString)OUTPUT:CodeigniterでJSON.stringify()オブジェクトがajax呼び出しで機能しない

{"library_fee":"100","lab_fee":"200","tution_fee":"300","admission_fee":"400"} 

しかし、私のコントローラは値を得ませんでした。 CodeIgniterのコントローラアクションメソッド:

public function set_fees_structure($id) { 
    $data = array(); 
    $data["admission_fee"] = $this->input->post("admission_fee", TRUE); 
    $data["tution_fee"] = $this->input->post("tution_fee", TRUE); 
    $data["library_fee"] = $this->input->post("library_fee", TRUE); 
    $data["lab_fee"] = $this->input->post("lab_fee", TRUE); 
    echo 'I m set fees structures ' . $id; 
    echo '<pre>'; 
    print_r($data); 
    exit(); 
} 
+0

アクションメソッドも追加します。 ajaxメソッド 'contentType: 'application/jsonに追加する必要があります。 charset = utf-8'' –

+0

私はすでに試しました。動作しません。 –

+0

可能な複製:http://stackoverflow.com/questions/21004315/passing-form-data-to-controller-using-ajax-and-jquery-with-codeigniter – NewbieCoder

答えて

0

試しこの@Ikram Hasib

方法1

var jsonFile = { 
 
     "coord": { 
 
     "lon": -88.64, 
 
     "lat": 35.44 
 
     }, 
 
     "weather": [{ 
 
     "id": 701, 
 
     "main": "Mist", 
 
     "description": "mist", 
 
     "icon": "50n" 
 
     }] 
 
    } 
 
    $.ajax({ 
 
     type: "POST", 
 
     url: url, 
 
     data: JSON.stringify({ 
 
     jsonFile 
 
     }), 
 
     dataType: "json", 
 
     contentType: "application/json", 
 
     Accept: 'application/json; charset=utf-8', 
 
     success: function(data) { 
 
     console.log(data); 
 
     } 
 
    });

方法2

var jsonFile = { 
 
    "coord": { 
 
    "lon": -88.64, 
 
    "lat": 35.44 
 
    }, 
 
    "weather": [{ 
 
    "id": 701, 
 
    "main": "Mist", 
 
    "description": "mist", 
 
    "icon": "50n" 
 
    }] 
 
} 
 

 
$.post(url, JSON.stringify({ 
 
    jsonFile 
 
    })) 
 
    .done(function(data) { 
 
    console.log(data); 
 
    });

+0

私がdataTypeを使用する場合: "json"、そうでない場合仕事のajax。それはまだ動作していないそれを使用します。あなたの情報については、formDaraはオブジェクトです –

+0

https://jsfiddle.net/でコードを作ってください。 –

+0

@IkramHasib私はそれをやり直す方法も追加して、古いコードを更新しました。 –

関連する問題