如何在json响应中返回javascript变量并将其值显示在文档中

时间:2019-04-30 06:57:36

标签: php html json ajax

我正在json响应中返回字符串:

item.php

    $ItemList =array (itemcode=>EATERY, itemname=>'Popcorn') ;


    $ItemDisplay =

 "  
                '<div>' +  document.write(this.itemname) +  ' - ' + 
                          document.write(this.itemcode) +'</div>' 
            "; 


        echo "{'itemlist':$ItemList, itemdisplay:$ItemDisplay}";

现在在html文件中,我希望显示输出。即显示json中嵌入的变量的值:

itemlist.html

var itemlist = '';
$.each(response.itemlist, function (i){


    itemdisplay += data.items;



});



$('#itemlist').html(itemdisplay );

必需的输出:

<div>Popcorn - EATERY</div>
<div>Burger - EATERY</div>
<div>Napkin - ACCESSORY</div>

更新:

itemlist是一个数组(itemcode => EATERY,itemname =>“爆米花”)

2 个答案:

答案 0 :(得分:1)

假设这是您的 itemlist.html 代码:

var itemdisplay = '';

$.each(response.itemlist, function (key, value){
    itemdisplay += value;
});

$('#itemlist').html(itemdisplay);

所以您的 item.php 应该是这样的:

$itemList = [
    ['itemcode' => 'EATERY', 'itemname' => 'Popcorn'],
    ['itemcode' => 'EATERY', 'itemname' => 'Burger'],
    ['itemcode' => 'ACCESSORY', 'itemname' => 'Napkin']
];

$json = [];

foreach($itemList as $item){
    $json[] = '<div>' . $item['itemname'] . ' - ' .  $item['itemcode'] . '</div>';
}

json_encode(['itemlist' => $json], JSON_UNESCAPED_SLASHES);

答案 1 :(得分:0)

Php -创建所需的标记并将其传递给客户端:

$ItemList = '<div>Item1 - Name 1</div><div>Item2 - Name 2</div><div>Item3 - Name 3</div>';
echo json_encode(['items' => $ItemList]);

Js -只需将提供的html插入到您选择的元素中即可:

$('#itemlist').html(response.items);