Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Визуализация
  5. ioBroker.vis Драйвер
  6. Как создать таблицу из объекта?

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    657

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Как создать таблицу из объекта?

Scheduled Pinned Locked Moved ioBroker.vis Драйвер
9 Posts 4 Posters 4.8k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    andrey99986
    wrote on last edited by
    #1

    Есть объект с json-данными:

    sendTo('sql.0', 'query', 'SELECT *  FROM iobroker.history', function (result) {
        if (result.error) {
            console.error(result.error);
           } else {
               setState('Sql_history', JSON.stringify(result.result));
          }
    
    });
    

    В vis-е пытаюсь сделать таблицу:

    var obj = {javascript.0.Sql_history};
    var tbl=$("").attr("id","mytable");
        $("#div1").append(tbl);
        for(var i=0;i<obj.length;i++) {/var/tr="<tr>" ;/td1="<td>" +obj[i]["id"]+"</td="">";
            var td2="</obj.length;i++)>";
            $("#mytable").append(tr+td1+td2); 
        }   
    
    Таблица не создаётся. Если скопировать значение объекта с json-данными сразу в js вместо {javascript.0.Sql_history} таблица создаётся.[/i][/i]
    
    | "+obj[i]["event_date"]+" |
    
    
    1 Reply Last reply
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      wrote on last edited by
      #2

      A так?

      var obj = getState('Sql_history').val;
      if (typeof obj === 'string') obj = JSON.parse(obj );
      
      
      1 Reply Last reply
      0
      • A Offline
        A Offline
        andrey99986
        wrote on last edited by
        #3

        @Bluefox:

        A так?

        var obj = getState('Sql_history').val;
        if (typeof obj === 'string') obj = JSON.parse(obj );
        
        ```` `  
        

        Это в vis вставить? Но js на стороне клиента не знает функций iobrokera, в консоли браузера:

        Error: Error: can't render tplHtml w00129 (ReferenceError: getState is not defined) 
        
        1 Reply Last reply
        0
        • BluefoxB Offline
          BluefoxB Offline
          Bluefox
          wrote on last edited by
          #4

          @andrey99986:

          @Bluefox:

          A так?

          var obj = getState('Sql_history').val;
          if (typeof obj === 'string') obj = JSON.parse(obj );
          
          ```` `  
          

          Это в vis вставить? Но js на стороне клиента не знает функций iobrokera, в консоли браузера:

          Error: Error: can't render tplHtml w00129 (ReferenceError: getState is not defined) 
          ```` `  
          

          Я думал что ты через скрипт таблицу собираешь. Но ты понял идею, что надо парсить значение

          1 Reply Last reply
          0
          • A Offline
            A Offline
            andrey99986
            wrote on last edited by
            #5

            Оказывается таблица отображается нормально при просмотре страницы с клиента (код тот же), а в режиме редактирования в vis-е таблицы не видно.

            Это баг или фишка?

            1 Reply Last reply
            0
            • A Offline
              A Offline
              andrey99986
              wrote on last edited by
              #6

              Возможная причина в экранировании точки в имени объекта, как правильно экранировать?

              В элементе html на код js в скрипте ошибка не выводится - таблица в редакторе не отображается, но в клиенте таблица генерируется и показывается.

              Если перенести js код в Скрипты vis-а, то ошибка отображается, таблицы нет в редакторе и нет при просмотре.
              1444_vis-er1.png

              1 Reply Last reply
              0
              • BluefoxB Offline
                BluefoxB Offline
                Bluefox
                wrote on last edited by
                #7

                @andrey99986:

                Оказывается таблица отображается нормально при просмотре страницы с клиента (код тот же), а в режиме редактирования в vis-е таблицы не видно.

                Это баг или фишка? `
                фишка

                1 Reply Last reply
                0
                • BluefoxB Offline
                  BluefoxB Offline
                  Bluefox
                  wrote on last edited by
                  #8

                  @andrey99986:

                  Возможная причина в экранировании точки в имени объекта, как правильно экранировать?

                  В элементе html на код js в скрипте ошибка не выводится - таблица в редакторе не отображается, но в клиенте таблица генерируется и показывается.

                  Если перенести js код в Скрипты vis-а, то ошибка отображается, таблицы нет в редакторе и нет при просмотре. `
                  Там, где ты редактируешь, bindings не работает.

                  1 Reply Last reply
                  0
                  • W Offline
                    W Offline
                    webguru
                    wrote on last edited by
                    #9

                    вот кстати классный материал по объектам http://webdiz.com.ua/glava-5-obekty-v-j … rator-new/

                    1 Reply Last reply
                    0

                    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                    With your input, this post could be even better 💗

                    Register Login
                    Reply
                    • Reply as topic
                    Log in to reply
                    • Oldest to Newest
                    • Newest to Oldest
                    • Most Votes


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    535

                    Online

                    32.7k

                    Users

                    82.6k

                    Topics

                    1.3m

                    Posts
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                    ioBroker Community 2014-2025
                    logo
                    • Login

                    • Don't have an account? Register

                    • Login or register to search.
                    • First post
                      Last post
                    0
                    • Home
                    • Recent
                    • Tags
                    • Unread 0
                    • Categories
                    • Unreplied
                    • Popular
                    • GitHub
                    • Docu
                    • Hilfe