Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Визуализация
    5. ioBroker.vis Драйвер
    6. Как создать таблицу из объекта?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      andrey99986 last edited by

      Есть объект с 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 Reply Quote 0
      • Bluefox
        Bluefox last edited by

        A так?

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

          @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 Reply Quote 0
          • Bluefox
            Bluefox last edited by

            @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 Reply Quote 0
            • A
              andrey99986 last edited by

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

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

              1 Reply Last reply Reply Quote 0
              • A
                andrey99986 last edited by

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

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

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

                1 Reply Last reply Reply Quote 0
                • Bluefox
                  Bluefox last edited by

                  @andrey99986:

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

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

                  1 Reply Last reply Reply Quote 0
                  • Bluefox
                    Bluefox last edited by

                    @andrey99986:

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

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

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

                    1 Reply Last reply Reply Quote 0
                    • W
                      webguru last edited by

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

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      940
                      Online

                      31.8k
                      Users

                      80.0k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      4422
                      Loading More Posts
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes
                      Reply
                      • Reply as topic
                      Log in to reply
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                      The ioBroker Community 2014-2023
                      logo