Hirdetés

Új hozzászólás Aktív témák

  • Silεncε
    őstag

    Neem, természetesen JSON a fogadott data.

    A "bajom" az, hogy beágyazott webserverrel kell dolgoznom (C# HTTPListener), így a HTML-en felüli dinamikus részt muszáj JSON API-val és kliensoldali scripttel megoldanom. Ez utóbbihoz viszont nem értek igazán, legalábbis eddig kevés dolgom volt még vele.

    $.getJSON(hubaddress+"/smarthomeapi/"+homeexternalid+"/devices", (responsejson) =>
    {
    $.each(responsejson, function (key, val)
    {
    console.log("Filling up devices box: " + val.displayname);
    $(".devices").append("<div><span class='icon icon"+val.devicekind+"' data-homeid='"+val.homeexternalid+"' data-deviceid='"+val.deviceid+"' data-action='ledtoggle'></span>"+val.displayname+"<small>"+val.manufacturer+"</small></div>");
    });
    });

    jQueryben nem vagyok otthon, de ez segíthet: [link]. Ezzel csinálsz egy új DOM elemet, amit eltárolsz egy változóban vagy constansban, majd [link] ezzel teszel rá egy event listenert, azzal az event típussal, amit figyelni akarsz, végül pedig ezt az elemet adod hozzá az appenddel a listához.

    A korábbi megoldásod pedig azért nem működött, mivel amikor lefutattod az event listener hozzáadását, az a class alapján hozzáadja az összes megfelelő elemhez a listenert, de csak ahhoz, ami éppen benne van a DOMban, ha késöbb adsz hozzá, ahhoz nem. (mivel a listener nem a CSS-hez lesz adva, hanem a DOM elemekhez)

Új hozzászólás Aktív témák