gpt4 book ai didi

javascript - 使用 AJAX 响应解析 JSON 对象并将其转换为 html 表

转载 作者:行者123 更新时间:2023-12-01 03:09:19 24 4
gpt4 key购买 nike

我正在使用 SYMFONY 3,我想使用 Ajax 解析从 Controller 接收到的 JSON,问题是 JSON 无法正确读取并返回未定义,这是我的代码:

Controller :

 $em = $this->getDoctrine()->getManager();

$RAW_QUERY = 'SELECT id,DO_Date,DL_Design,DL_Qte,DL_MontantHT,DL_MontantTTC FROM `facture_ligne` WHERE facture_id=:id';

$statement = $em->getConnection()->prepare($RAW_QUERY);
// Set parameters
$statement->bindValue('id', $id);
$statement->execute();

$facture = $statement->fetchAll();

$serializer = $this->container->get('jms_serializer');
$reports = $serializer->serialize($facture,'json');
return new Response($reports);

我的脚本在 Twig 文件中:

function detailfacture{{ fact.id }} (id) {

var z= new XMLHttpRequest();
z.open("get","{{ path('Ajaxonify',{'id':fact.id}) }})",true);
z.send()
z.onreadystatechange = function result () {
var json=z.responseText;
if(json!="")
{
alert(json);

var tr;
for (var i = 0; i < json.length; i++) {
tr = $('<tr/>');
tr.append("<td>" + json[1].DL_MontantHT + "</td>");
tr.append("<td>" + json[1].DO_Date + "</td>");
tr.append("<td>" + json[1].DL_Qte + "</td>");
$('#tb').append(tr);
}
}
else alert("helo");
}
}

这是一些结果的屏幕截图: enter image description here enter image description here

我刚刚使用静态 JSON 进行了测试,它工作正常

这就是

console.log(data);
console.log(json);

返回

enter image description here

最佳答案

在使用 JSON 之前,您需要将其解析为 JavaScript 对象,如下所示:

var json = JSON.parse(json);

alert(json) 之后、for 循环之前插入此行,因此您的脚本如下所示:

function detailfacture{{ fact.id }} (id) {

var z= new XMLHttpRequest();
z.open("get","{{ path('Ajaxonify',{'id':fact.id}) }})",true);
z.send()
z.onreadystatechange = function result () {
var json=z.responseText;
if(json!="")
{
alert(json);
json = JSON.parse(json);

var tr;
for (var i = 0; i < json.length; i++) {
tr = $('<tr/>');
tr.append("<td>" + json[i].DL_MontantHT + "</td>");
tr.append("<td>" + json[i].DO_Date + "</td>");
tr.append("<td>" + json[i].DL_Qte + "</td>");
$('#tb').append(tr);
}
}
else alert("helo");
}
}

关于javascript - 使用 AJAX 响应解析 JSON 对象并将其转换为 html 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45961930/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com