Antwort an „Der alte Walter“ verfassen

falsche Methode. JSON ist nicht HTML, hier wäre Javascript-String-Behandlung nötig - sofern das nicht schon die Methode zur Erzeugung des json macht.

Soll heißen, hier besteht eigentlich kein Handlungsbedarf, Javascript-String-Behandlung sollte von

//PHP
json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
// ...will meine JSON Datei halbwegs leserlich gestalten

erledigt werden, richtig?

Die Behandlung der Zeichen für HTML (also <>& -> &lt;&gt;&amp;)muß erfolgen, wenn die Daten in die HTML-Elemente geschrieben werden.

Ja, darüber bin ich bei meinen Recherchen bereits gestolpert. Daher:

      function escapeHTML(str) {
        return str.replace(/[&<>"']/g, function (char) {
          switch (char) {
            case "&":
              return "&amp;";
            case "<":
              return "&lt;";
            case ">":
              return "&gt;";
            case '"':
              return "&quot;";
            case "'":
              return "&#39;";
          }
        });
      }

und dann

myForm.innerHTML = `
      <input type="text" id="nameInput" name="name" value="${
        data ? escapeHTML(data.name) : ""
      }" autocomplete="off" required aria-required="true" aria-describedby="dataHelp"/>
    `;

cu,
Andreas a/k/a MudGuard

Danke Dir für Deine Hilfe! 😀😃👍👍

freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar

Ihre Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.

abbrechen