私のコードには脆弱性があり、少し混乱しています。しかし、私はにconsole.logに「未定義」取得していますjQuery ajaxでサーバ側からの応答を処理する
$.ajax({
type: 'POST',
url: '/contact/index/add/',
data: $("#addContact").serialize(),
success: function(data, status, xhttp) {
var response = eval ("[" + data + "]");
console.log(response.msg);
if (response.success){
console.log(response.msg);
} else {
console.log(response.msg);
}
},
dataType: "html"
});
私は何を探していますが(JSON形式でエンコードされた)アレイにアクセスできるようにする応答にある(response.msg)ライン
Iは、(応答)CONSOLE.LOG場合は、として(放火犯で)示しています
[オブジェクト{成功= TRUE、MSG = "テスト"}]
要求が返送されます続くトリング:
{ "成功":真、 "MSG": "テスト"} 私はevalのための[]内の応答を囲むために持っている理由です。
私が混乱しているのは、上記の配列のプロパティにどうやってアクセスするのですか。
Iは、(PHP/Zendのフレームワーク)を有するサーバ側
エコーZend_Json_Encoder ::エンコード(配列( '成功' => trueを、 'MSG' => 'テスト'));出口;
私は
は、私は、サーバー側またはJavaScript側を変更する必要があります行のように配列のキー/値にアクセスするために何が必要ですか?
- アップデート - 私はデータ型をHTMLではなくjsonとして修正し、[]問題を修正しました。 –
- 2回目の更新 - この問題を無視してください。それは問題全体であり、私がする必要があったのは正しいデータタイプを設定することでした。 –