好的,所以我正在使用此代码,无法弄清楚如何解决上述问题。我得到了一个简单的循环:

for (i = 0; i < z.length; i++) {
  var ht = $('<div class="empresa"><div class="ordem"><div class="ordem_e">Ordem:1</div><div class="nome_e">Nome da empresa</div></div><div class="responsaveis"><p class="nome_r">Nome do cidadão</p><span class="ordem_p">Ordem:1</span><br /><p class="funcao">Contratante</p><br /><div class="cont_status"><div class="ind_assinar">Assinar</div><div class="ind_aprovar">Aprovar</div><div class="ind_aceitar">Aceitar</div></div></div></div>')

  ht.find(".ordem_e").text('Ordem:' + z[i].papel_ordem);
  ht.find(".nome_e").text(z[i].empr_nome);
  ht.find(".nome_r").text(z[i].cont_nome);
  ht.find(".ordem_p").text("Ordem:" + z[i].cont_ordem);
  ht.find(".funcao").text(z[i].decl_identificacao);

  $(".insere_empr").append(ht);
}


wich仅创建了一些显示一些属性的对象,如以下屏幕截图所示:

jquery - 检查Json对象内部数组中的相同字符串-LMLPHP

我在其中获取值的代码中的“ z”是从Ajax调用返回的JSON。这是一个内部包含对象的数组,例如[{...},{...},{...},{...}]

因此,如何比较一个元素(在我的代码中,.nome_e文本或图片中的“ Magna”名称)以检查相同的元素?然后,我想统一说具有相同名称的html对象(同样,根据屏幕截图,“ Magna”将在其中放两个盒子)。

我仍在尝试寻找解决方案的方法,但看来我现在迷路了。会继续尝试的,但是如果有人可以向我指出如何解决该问题的想法,那将有很大帮助:D

在此先感谢您,如果该帖子发布时间过长,我们将深表歉意。我试图澄清我的问题。

最佳答案

您可以建立一个已经使用过的键(对象)的索引来忽略相同的元素:

let idx = {};
for (i = 0; i < z.length; i++) {
    if (!idx[z[i].empr_nome]) {
        idx[z[i].empr_nome] = 1;
        var ht = $('<div class="empresa"><div class="ordem"><div class="ordem_e">Ordem:1</div><div class="nome_e">Nome da empresa</div></div><div class="responsaveis"><p class="nome_r">Nome do cidadão</p><span class="ordem_p">Ordem:1</span><br /><p class="funcao">Contratante</p><br /><div class="cont_status"><div class="ind_assinar">Assinar</div><div class="ind_aprovar">Aprovar</div><div class="ind_aceitar">Aceitar</div></div></div></div>');

关于jquery - 检查Json对象内部数组中的相同字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48174209/

10-14 18:14
查看更多