Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Таблица циклом (https://javascript.ru/forum/misc/72136-tablica-ciklom.html)

SpaceAlarm 11.01.2018 17:19

Цитата:

Сообщение от Dilettante_Pro (Сообщение 474841)
SpaceAlarm,

Здорово... И кто знает, кто в этих данных - группа, администратор, пользователь...
Куда и каким образом приходят эти данные?

в поле группы, нужно отправлять client_type, но это поле не так важно, данные на клиент (frontend) приходят с backend сервера (nodejs) через socketio

Dilettante_Pro 11.01.2018 17:44

SpaceAlarm,
Цитата:

Сообщение от SpaceAlarm
в поле группы, нужно отправлять client_type

В вашем примере client_type: 0 во всех строчках
Что это такое?
Цитата:

Сообщение от SpaceAlarm
но это поле не так важно

В какую строку таблицы html писать эти данные?
Цитата:

Сообщение от SpaceAlarm
данные на клиент (frontend) приходят с backend сервера (nodejs) через socketio

И куда попадают?

рони 11.01.2018 17:46

SpaceAlarm,
создать таблицу из массива это 10 строк, знать бы ещё что вам нужно.
смотрите примеры, может сами справитесь
http://javascript.ru/forum/showthrea...350#post444350
https://javascript.ru/forum/misc/355...t-tablicu.html

SpaceAlarm 11.01.2018 18:47

Цитата:

Сообщение от Dilettante_Pro (Сообщение 474850)
SpaceAlarm,

В вашем примере client_type: 0 во всех строчках
Что это такое?

В какую строку таблицы html писать эти данные?

И куда попадают?

client_type попадает в поле Группа, client_nickname нужно выводить во второе поле, с названием Логин

рони 11.01.2018 20:39

SpaceAlarm,

Вопросы есть?

SpaceAlarm 11.01.2018 20:48

Цитата:

Сообщение от рони (Сообщение 474871)
SpaceAlarm,

Вопросы есть?

Конечно, как мне это организовать в коде? помогите, ибо так не сделаю

рони 11.01.2018 21:17

Создание таблицы из массива обьектов
 
SpaceAlarm,

от вас требовались строки 26 - 29 :( :( :(

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">

 td{
 text-align: center;
 border: solid 1px #0000FF;
 }
 table {
border-collapse: collapse;
border: 1px solid #0000FF;
width: 300px;

}



 </style>
<script>
window.addEventListener("DOMContentLoaded", function() {

  var data = [{client_nickname:"rrrrrrr", client_type:1}, {client_nickname:"yyyyyy", client_type:0}, {client_nickname:"yyy", client_type:0}, {client_nickname:"nnn", client_type:"x"}];
  var type = {0 : "Пользователь", 1 : "Администратор"};
  var thead = ["Группа","Логин"];
  var filter = ["client_type", "client_nickname"];

  function createTable(obj) {
    var table = document.createElement("table");
    if (obj.data && obj.filter && obj.type) {
      obj.data.forEach(function(content, indx) {
        var tr = table.insertRow(indx);
        obj.filter.forEach(function(key, i) {
          var td = tr.insertCell(i);
          td.textContent = i ? content[key] : obj.type[content[key]] ? obj.type[content[key]] : "кто это?";
        });
      });
    }
    if (obj.thead) {
      var thead = document.createElement("thead");
      table.appendChild(thead);
      var tr = thead.insertRow(0);
      obj.thead.forEach(function(title) {
        var th = document.createElement("th");
        th.textContent = title;
        tr.appendChild(th);
      });
    }
    return table;
  }
  var table = createTable({thead:thead, data:data, filter:filter, type:type});

  var parent = document.body;
  parent.appendChild(table);
});
</script>
</head>

<body>

</body>
</html>

SpaceAlarm 11.01.2018 21:37

Спасибо большое, так я же вам дал структуру в скриншоте, приходящего объекта

рони 11.01.2018 21:52

Цитата:

Сообщение от SpaceAlarm
Спасибо большое, так я же вам дал структуру в скриншоте, приходящего объекта

это вам показалось ... даже ваш скриншот обрезан, на самом интересном месте. читайте тему с самого начала ... сплошные тормоза ... если вам видно структуру и необходмые преобразования, то другим пришлось догадываться ... конкретизируйте проблему в будущем сразу, так будет проще всем.

SpaceAlarm 11.01.2018 22:25

Цитата:

Сообщение от рони (Сообщение 474885)
это вам показалось ... даже ваш скриншот обрезан, на самом интересном месте. читайте тему с самого начала ... сплошные тормоза ... если вам видно структуру и необходмые преобразования, то другим пришлось догадываться ... конкретизируйте проблему в будущем сразу, так будет проще всем.

еще вот есть не большой вопрос, есть код

socket.on('test', function(data) {
	  console.log(data.text.length);
		let num = data.text.length;
		for (var i = 0; i < num; i++) {
			$('#num').append('<tr><td>ID:</td><td>'+data.text[i].client_ids+'</td></tr>');
		}
    });

Сейчас приходят данные с сервера, но они на странице добавляются один за одним, http://prntscr.com/hz4z49
Смысл того что, допустим есть 3 клиента, они с идами, 1,2,3 с сервера приходят эти иды каждую секунду, в место того чтобы они обновлялись просто, но они просто добавляются с низу, как это решить?


Часовой пояс GMT +3, время: 00:28.