首页 > 解决方案 > 无法加载类别 php 和 ajax

问题描述

我正在创建一个电子商务网站。我完成了设计部分。在编写编码部分时,我遇到了无法显示内部类别的问题,<div id="categories"><li><li></div> 我将代码附在了目前为止尝试过的代码下方。没有错误显示如何显示div标签内的类别。

所有类别都显示在此 Div 中,如订单列表

  <div id="categories">
       <li ><li>
  </div>

jQuery

 function getCategory(){
        $.ajax({
            type: 'GET',
            url: 'all_category.php' ,
            dataType: 'JSON',
            success: function (data) {
             console.log(data);

                $("categories").html(data.catname);

            },
            error: function (xhr, status, error) {
                alert(xhr.responseText);
//
            }

        });
    }

数据库 all_category.php

<?php
include("db.php");

$stmt = $conn->prepare("select id,catname,status from category order by id DESC ");
$stmt->bind_result($id,$catname,$status);

if ($stmt->execute()) {
    while ( $stmt->fetch() ) {
        $output[] = array ("id"=>$id, "catname"=>$catname,"status"=>$status);
    }

    echo json_encode( $output );
}
$stmt->close();

?>

标签: phpjqueryjsonajax

解决方案


您的 jQuery 语法稍有偏差 - 小拼写问题;

 $("categories").html(data.catname);

应该

 $("#categories").html(data.catname);

编辑:要解决未添加到列表中的项目的问题,您需要在 ajax 的成功处理程序中附加元素:

$.each(data.catname, function(key, value) {
    $("#categories").append('<li>'+ value +'</li>');
});

推荐阅读