Обновление списка с ajax и бритвой - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть страница в asp. net основной бритве, которая обновляет базу данных. Я использую ajax до go для контроллера, мир готов, но я не могу обновить список, который возвращает метод ajax.

Это мой ajax метод:

   $.ajax(
        {
            url: "/Uploader/Update",
            type: 'post',
            data: {
                Id: valor
            },
            success: function (data) {
                $("#LaudosDocumentos").html(data);
            }

        })

Вот мой Controller:

 public async Task<IActionResult> Update(int Id)
        {
            ApplicationUser user = await _userManager.GetUserAsync(User);
            if (!ModelState.IsValid)
            {
                return NotFound();
            }

             Laudos = _context.Laudos.Find(Id);
             Laudos.Excluido = true;
            Laudos.AlteracaoUsuId = user.Id;

            _context.Attach(Laudos).State = EntityState.Modified;
            await _context.SaveChangesAsync();
            Id = Laudos.PessoaId;
            LaudosDocumentos = await _context.Laudos.Where(m => m.PessoaId == Id && m.Excluido == false).ToListAsync();
            return Json( new { LaudosDocumentos });
        }

Это моя страница cshtml:

image item.PessoaId)/@Html.DisplayFor(modelItem => item.Caminho)">

Мне просто нужно обновить список Model.LaudosDocumentos но без необходимости передавать Id из div.

Я пытался передать значение item в ajax, но оно также не сработало.

1 Ответ

0 голосов
/ 15 апреля 2020

Json( new { LaudosDocumentos }) вернет Json данные, вы должны создать разметку html и связать ее со значением Json, используя Javascript, здесь - это пример кода.

Если вы не хотите создавать html в javscript вручную, вы можете поместить весь <div> в частичное представление и использовать ajax для вызова серверной функции для запроса / загрузки частичного представления с переданной моделью / значением, и, наконец, в случае успеха функция Ajax напрямую загружает html, используя .html(result);. Здесь - образец образца.

...