Teilen Sie die zurückgegebenen Daten nach Datum auf
P粉986028039
P粉986028039 2023-08-14 15:41:44
0
1
555
<p>Ich sende mein Formular wie folgt zurück, wobei ich zwei erwartete Ergebnisse für den 12. und 13. habe. </p> <p><br /></p> <pre class="snippet-code-js lang-js Prettyprint-override"><code>var data = [{ Design: „Micro-ondas1“, Kapitel: „Cozinha“, Daten: „12.08.2023“, }, { Design: „Exaustor cinzento 1“, Kapitel: „“, Daten: „12.08.2023“, }, { Designacao: „Mesa – Castanha –8 Lugares“, Kapitel: „Sala“, Daten: „13.08.2023“ }, { Bezeichnung: „cama“, Kapitel: „Quarto“, Daten: „13.08.2023“, }, ]; var linha = ``; Object.keys(data).forEach(i => { Designacao = data[i].Designacao; Capitulo = data[i].Capitulo; Daten = data[i].Data; if (Daten != Daten) { linha += `<div class="card-header">Data Passagem de Turno - ${Data}</div>`; } linha += `<div class="row col-md-12"> <div class="col-md-4"> <p class="form-label">Daten </p> <input type="text" class="form-control" name="dataen" value="${Data}"> </div> <div class="col-md-3"> <p class="form-label">Benutzercode </p> <input type="text" class="form-control" name="codigoen" value="${Capitulo}" invalid="disabled"> </div> <div class="col-12"> <p class="form-label">Diário de Enfermagem </p> <textarea rows="6" class="form-control" name="didiarenf" > ${Designacao} </textarea> </div>`; $(".histpturno").html(linha); })</code></pre> <pre class="snippet-code-html lang-html Prettyprint-override"><code><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/ jquery.min.js"></script> <div class="histpturno"></div></code></pre> <p><br /></p> <p>Ich werde die Ergebnisse nach Tagen aufteilen. Zeigen Sie beispielsweise vor dem 12. Ergebnis den Titel im If an und zeigen Sie den Titel dann erst wieder an, wenn das 13. Ergebnis zurückgegeben wird. </p> <p>Ich habe versucht, if zu verwenden, um den gewünschten Effekt zu erzielen, aber es funktioniert nicht, der Titel wird nie zurückgegeben. Der Titel, auf den ich mich beziehe, ist dieser in if: </p> <pre class="brush:php;toolbar:false;"><div class="card-header">Datendurchgang - ${Data}</div></pre> <p><br /></p>
P粉986028039
P粉986028039

Antworte allen(1)
P粉512363233

这应该很明显,这永远不会成立,对吧?在比较运算符两边的读取访问之间,Data不会发生变化。

您需要将当前值与之前处理的记录的值进行比较。最简单的方法是将之前的值存储到一个变量中,并将其初始化为实际数据中不会出现的值(这样在第一条记录上检查时将返回true)。

var data = [{
    Designacao: "Micro-ondas1",
    Capitulo: "Cozinha",
    Data: "2023-08-12",
  },
  {
    Designacao: "Exaustor cinzento 1",
    Capitulo: "",
    Data: "2023-08-12",
  },
  {
    Designacao: "Mesa - Castanha -8 Lugares",
    Capitulo: "Sala",
    Data: "2023-08-13"
  },
  {
    Designacao: "cama",
    Capitulo: "Quarto",
    Data: "2023-08-13",
  },
];

var linha = ``;
var prevData = null; // initialize

Object.keys(data).forEach(i => {

  Designacao = data[i].Designacao;
  Capitulo = data[i].Capitulo;
  Data = data[i].Data;

  if (Data !== prevData) { // compare; for safety using strict type checking
    linha += `<div class="card-header">Data Passagem de Turno - ${Data}</div>`;
  }
  prevData = Data; // update, so that this will hold the correct "previous" record on the next iteration

  linha += `<div class="row col-md-12">
            <div class="col-md-4">
              <p class="form-label">Data </p>
              <input type="text" class="form-control" name="dataen" value="${Data}">
            </div>
            <div class="col-md-3">
              <p class="form-label">Código Utente </p>
              <input type="text" class="form-control" name="codigoen" value="${Capitulo}" disabled="disabled">
            </div>
            <div class="col-12">
              <p class="form-label">Diário de Enfermagem </p>
              <textarea rows="6" class="form-control" name="didiarenf" > ${Designacao} </textarea>
            </div>`;

  $(".histpturno").html(linha);

})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="histpturno"></div>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage