【问题标题】:ajax refresh div with json loopajax用json循环刷新div
【发布时间】:2023-04-02 08:36:02
【问题描述】:

我有这个接收 json var 的 ajax 函数。

 $.ajax({ 
                type: "POST",
                url: "@Url.Action("FilterCheck","Operatore")",
                datatype: "json",
                traditional: true,
                data: { 'mycheck': mycheck, 'idprot': idprot, 'id': '@Model.id' },
                success: function (response) {
                    $('#external-events').empty(); // clear existing items
                    $.each(response, function (index, item) {
                        var div = $('<div class="col-lg-3"><div class="external-event"></div></div>'); // Create new element
                        div.text(item.id + ' ' + item.nome + ' ' + item.cognome); // Set inner text
                        $('#external-events').append(div); // add the new element

                },

我会刷新这个 HTML div:

<div id='external-events'>

              @foreach (HAnnoZero.Repositories.utente item in ViewBag.Utenti)
        {
            <div class='col-lg-3'><div class='external-event'>@item.id- @item.cognome @item.nome</div></div>    
        }   </div>  

使用 jquery 函数“每个”我为更多元素 json 执行循环。 这样不行,只写第一个div class='col-lg-3',不写第二个。我该怎么办? 谢谢

【问题讨论】:

  • 你能更具体地说明你想在这里完成什么吗?
  • 我想用 json var 重写所有 div "external-events"

标签: javascript jquery html ajax json


【解决方案1】:

你的问题在这里:

div.text(item.id + ' ' + item.nome + ' ' + item.cognome); // Set inner text

您使用 col-lg-3 类声明了您的 div,其中包含另一个 div 外部事件。 当您使用 div.text() 时,jquery 将替换 col-lg-3 的内容,而不是外部事件。

你应该这样做:

div.find('.external-event').text(item.id + item.nome + item.cognome);

编辑 或者直接:

var div = $('<div class="col-lg-3"><div class="external-event">' + item.id + ' ' + item.nome + ' ' + item.cognome + '</div></div>'); // Create new element
$('#external-events').append(div); // add the new element

【讨论】:

  • 我无法帮助您,因为您的问题中没有关于拖放的信息 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-31
  • 1970-01-01
  • 1970-01-01
  • 2014-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多