Не удалось загрузить данные на страницу с помощью Asp.net MVC Json - PullRequest
0 голосов
/ 08 июля 2019

Я создаю простой сайт электронной коммерции.у меня была проблема с catgory не загружен, но при проверке через console.log загрузка успешно. но он не загружается на страницу.я не знаю почемуЯ прикрепил снимок экрана ниже.

введите описание изображения здесь

Категории

     @model WebApplication40.Models.category
@{
    ViewBag.Title = "Index";
}


<html>
<head>

    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
</head>

<body>
    <div class="container-fluid bg-2 text-center">

        <div class="row">
            <div class="col-md-3">
                <div align="left">

                    <li class="list-group-item list-group-item-action active"><h4>Categories</h4></li>
                    <li>
                        <ul id="displayResults" class="list-group-item list-group-item- action"></ul>
                    </li>
                </div>
</div>

</body>
</html>

Категория Jquery

function getCategory() {
                $.ajax({
                    type: 'GET',
                    url: '/home/Getcatgory',
                    dataType: 'JSON',
                    success: function (data) {


                        console.log(data);

                        for (var i = 0; i < data.length; i++) {
                            var catname = data[i].cat_name;
                            var catid = data[i].id;



                            //  if(catstatus){
                            $('#displayResults').append('<li id=' + catid + ' class="list-group-item list-group-item-action"><input cat_id="' + catid + '" name="chk1" type="checkbox" value="true" class="live" > ' + '  ' + ' <b>' + catname + '<b></li>');
                            //   }else{
                            //  $('#displayResults').append('<li id='+catid+' class="list-group-item list-group-item-action"><b>'+ data[i].catname + '<b><input id="cat_'+ catid +'" type="checkbox" class="view" ></li>');
                            //     }

                        }
                    },
                    error: function (xhr, status, error) {
                        console.log(xhr.message)
                    }
                });
            }

Категория Controller

 public ActionResult Getcatgory()
        {
            using (kstoreEntities db = new kstoreEntities())
            {
                var category = db.categories.ToList();
                return Json(new { data = category }, JsonRequestBehavior.AllowGet);
            }
        }

Модель kstoreEntities

public partial class category
    {
        public int id { get; set; }
        public string cat_name { get; set; }
    }

1 Ответ

0 голосов
/ 08 июля 2019

В функции успеха Ajax вы получаете данные JSON, к которым все значение добавляется с помощью клавиши «data».

мы получаем ответ data.data, например

success: function (data) {
    console.log(data.data);
    var result=data.data; //we get json result by "data" key

    for (var i = 0; i < result.length; i++) {
        var catname = result[i].cat_name;
        var catid = result[i].id;



        //  if(catstatus){
        $('#displayResults').append('<li id=' + catid + ' class="list-group-item list-group-item-action"><input cat_id="' + catid + '" name="chk1" type="checkbox" value="true" class="live" > ' + '  ' + ' <b>' + catname + '<b></li>');
        //   }else{
        //  $('#displayResults').append('<li id='+catid+' class="list-group-item list-group-item-action"><b>'+ data[i].catname + '<b><input id="cat_'+ catid +'" type="checkbox" class="view" ></li>');
        //     }

    }
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...