Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS][JSON] Zwracane dane
Forum PHP.pl > Forum > Przedszkole
Rimoraj
Cześć,
jak zrobić aby zwracane dane typu obiekt wyświetliły mi się w div-ie?

Dokładniej co chcę zrobić:
Kod
1.     fetch(req)
2.          .then((res) => res.json())
3.          .then((data) => {
4.            console.log('Response from server');
5.            console.log(data);
6.            $tmt = data;
7.            document.getElementById("myData").innerHTML = $tmt;
8.          })
9.          .catch(console.warn);


linijka 5 ładnie mi pokazuje w konsoli:


Chciałbym aby mi pokazywało to samo w divie #myData, niestety linijka 7. wpisuje tylko:
Kod
[object Object]
nospor
No musisz iterowac po tym obiekcie i po kolei do diva dodawac element po elemencie.
Rimoraj
Istnieje coś takiego w JS jak var_dump w PHP? bo nie za bardzo wiem jak się zabrać za:
Kod
data
viking
Przecież sam wkleiłeś dumpa.
https://developer.mozilla.org/pl/docs/Web/J...s/Array/forEach
nospor
Jak tak bardzo ci sie nie chce to prosze:
https://stackoverflow.com/questions/749266/...dump-javascript

Kod
function mydump(arr,level) {
    var dumped_text = "";
    if(!level) level = 0;

    var level_padding = "";
    for(var j=0;j<level+1;j++) level_padding += "    ";

    if(typeof(arr) == 'object') {  
        for(var item in arr) {
            var value = arr[item];

            if(typeof(value) == 'object') {
                dumped_text += level_padding + "'" + item + "' ...\n";
                dumped_text += mydump(value,level+1);
            } else {
                dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
            }
        }
    } else {
        dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
    }
    return dumped_text;
}
Rimoraj
Wielkie dzięki, funkcja mydump zadziałała.

Trafiłem na kolejną ścianę.
Wszystko działa pięknie do puki nie mam nulli.
Przykład:
W konsoli wyświetla się:
Kod
0: Object { ID_Dostawcy: 1, Nazwa: null, adres: "ul. alamakota 37" }

Funkcja mydump pomija pole z null przez co mi się wszystko rozjeżdża.
Jak zrobić aby wyświetlało z nullami?
nospor
funckja mydump nie pomija nulli. Poprostu NULl dodany do tekstu to NIC i tyle.
Jak chcesz miec tam balwanka zamiast NIC, to dodaj IF value === nulll then balwanek smile.gif
Rimoraj
Kod
for(const item in arr) {
                        var value = arr[item];

                         if(value === null) {
                            dumped_text += "<td>";
                            dumped_text += "balwanek";
                            dumped_text += "</td>";
                        }else if (typeof(value) == 'object') {
                            dumped_text += mydump(value,level+1);
                        }else{
                            dumped_text += "<td>";
                            dumped_text += value;
                            dumped_text += "</td>";
                        }
}


Zadziałało, dziękuję bardzo.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.