Javascript 如何从json ajax响应设置php数组

Javascript 如何从json ajax响应设置php数组,javascript,php,jquery,Javascript,Php,Jquery,类别列表显示。单击类别后,我们已经根据类别列出了产品,当我单击类别时,调用了_category_products function,并返回json输出 [{"name":"watch","unit_price":"430.00"},{"name":"watch","unit_price":"250.00"}] function get_category_products(category){ $.ajax({ type: 'POST',

类别列表显示。单击类别后,我们已经根据类别列出了产品,当我单击类别时,调用了_category_products function,并返回json输出

[{"name":"watch","unit_price":"430.00"},{"name":"watch","unit_price":"250.00"}] 





function get_category_products(category){

        $.ajax({
            type: 'POST',
            url:    "get_category_products.php",
            async: true,
            data: 'category=' + category,
            cache: false,
                success: function(data)
                {               
                alert(data);                 
                }
            });

    }
产品清单代码

<div style="border:solid 1px red;width:230px;height:300px;overflow-y:scroll;">
        <h4>Items/Products</h4>
        <hr>
        <table border="0">  

         <tr>
             <?php $count =1; 
             $countItems = count($products_list);
             for($pr1=0;$pr1 < $countItems;$pr1++){  ?>                     
                   <td style="border:solid 1px black;width:100px;height:70px;text-align:center">
                    <table>
                        <tr><td colspan="2"><img src=""></td> </tr>
                        <tr>
                            <td><?php echo $products_list[$pr1]->name;?></td>
                            <td><?php echo $products_list[$pr1]->unit_price;?></td>
                        </tr>                    
                    </table>
                </td>
                    <?php if($count % 3 == 0) { ?> </tr><tr><?php } ?>
                <?php $count++; } ?>
         </table>

    </div>

项目/产品


如何解码json输出并设置为php数组($products_list),如何使用上述代码基于类别显示产品。

数据类型:“json”
添加到AJAX调用中,jQuery将自动为您解码

$.ajax({
    type: 'POST',
    url:    "get_category_products.php",
    async: true,
    data: { category: category},
    dataType: 'json', // *******
    cache: false,
    success: function(data) {               
        alert(data);                 
    }
});

我还建议始终将对象作为
data
选项传递,允许jQuery为您编码(它将调用
encodeURLComponent
,正确编码特殊字符),而不是
param=value
字符串,因为您无法从服务器设置为php json响应。只有java脚本可以使用json数据,您可以将json设置为某个JS对象,并仅使用JS更新模板。我建议使用
,非常简单。

将数据更改为:
data:{category:category}