Mat*_*eau 5 javascript php ajax json
这是我从我的 Ajax 方法返回的 json:
{"id_ac":"32","mail_uniq_ac":"mail@gmail.com","id_civ":"2"}
我想访问id_ac我的 javascript 中的键值,但实际上,我不能。
这是我的 ajax 控制器:
public function executeAjaxGetActeur(sfWebRequest $request){
$id_ac = $request->getParameter('id_ac');
$acteur = Doctrine_Core::getTable('Acteur')->findOneByIdAc($id_ac);
return $this->renderText(json_encode($acteur->toArray()));
}
Run Code Online (Sandbox Code Playgroud)
这是我需要获取键值的 javascript
function showModalTempsPartenaire($id_ac){
var $id_ac = $id_ac;
$.post($url + "/ajax/get_acteur", {
id_ac: $id_ac
}, function (data) {
if (data && trim(data) != '')
console.log(data);
console.log(data['id_ac'])
});
}
Run Code Online (Sandbox Code Playgroud)
这 :
console.log(data);
Run Code Online (Sandbox Code Playgroud)
输出我:
{"id_ac":"32","mail_uniq_ac":"mail@gmail.com","id_civ":"2"}
Run Code Online (Sandbox Code Playgroud)
但是 console.log(data['id_ac']); 返回未定义
You're encoding the data to JSON in the server side using json_encode(), you need to decode it in the client side using JSON.parse() so you will be able to get the information from it like :
function showModalTempsPartenaire($id_ac){
var $id_ac = $id_ac;
$.post($url + "/ajax/get_acteur", {
id_ac: $id_ac
}, function (data) {
if (data && trim(data) != '')
data = JSON.parse(data);
console.log(data['id_ac'])
});
}
Run Code Online (Sandbox Code Playgroud)
Working sample
function showModalTempsPartenaire($id_ac){
var $id_ac = $id_ac;
$.post($url + "/ajax/get_acteur", {
id_ac: $id_ac
}, function (data) {
if (data && trim(data) != '')
data = JSON.parse(data);
console.log(data['id_ac'])
});
}
Run Code Online (Sandbox Code Playgroud)