我有这个接收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函数&#34;每个&#34;我为更多元素json做循环。 以这种方式不工作,只写第一个div class =&#39; col-lg-3&#39;而不是第二个。我该怎么办? 谢谢
答案 0 :(得分: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);
EDIT 或直接:
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