Ich verwende eine JavaScript -Funktion, um eine HTML -Tabelle basierend auf Daten zu füllen, die aus einer bestimmten URL abgerufen wurden (im JSON -Format). Es funktioniert manchmal, aber manchmal bleibt die Tabelle leer oder die Daten werden nicht wie erwartet angezeigt. < /P>
Hier ist die Funktion: < /p>
function fillTable(tablehead, tablebody, url) {
return new Promise((resolve, reject) => {
$(`#${tablehead}`).html('');
$(`#${tablebody}`).html('');
xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.send();
xhr.onreadystatechange = function() {
var tabla = JSON.parse(xhr.responseText);
if (xhr.readyState == 4 && xhr.status == 200) {
if (url.search("/mozi") != -1) {
xhr = new XMLHttpRequest();
xhr.open('GET', '/get_moziid_count', true);
xhr.send();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
var moziidcount = JSON.parse(xhr.responseText);
var fejlec = '';
for (var key in tabla[0]) {
fejlec += `` + key + '';
}
fejlec += '';
var sorok = '';
for (var i = 0; i < tabla.length; i++) {
let szam = moziidcount.filter(m => m.moziid == tabla.id);
sorok += ``
for (var k in tabla) {
sorok += '' + tabla[k] + '';
}
sorok += '';
}
$(`#${tablehead}`).html(fejlec);
$(`#${tablebody}`).html(sorok);
resolve();
}
}
} else {
var fejlec = '';
for (var key in tabla[0]) {
fejlec += `` + key + '';
}
fejlec += '';
var sorok = '';
for (var i = 0; i < tabla.length; i++) {
sorok += ``;
for (var k in tabla) {
sorok += '' + tabla[k] + '';
}
sorok += '';
}
$(`#${tablehead}`).html(fejlec);
$(`#${tablebody}`).html(sorok);
resolve();
}
}
};
});
}
< /code>
Probleme, mit denen ich ausgesetzt bin: < /p>
Manchmal bleibt die Tabelle leer. wird vor ReadyState === 4 genannt, was einen Fehler verursacht, wenn die Antwort noch nicht angekommen ist. Für:
Wie kann ich diese Funktion zuverlässiger machen? Danke im Voraus!
Fülenfohlene Funktion funktioniert nicht immer richtig - wie kann sie zuverlässiger werden? ⇐ HTML
-
- Similar Topics
- Replies
- Views
- Last post