Tizi
@Tizi
гуру программист ( no )

Как задать условие по data атрибуту из файла json ??

подскажите как задать условие по data атрибуту ( в моем случае data-id="")
Суть вот в чем, у меня есть файл json в котором есть вот такая вот структура.
{
"users": [
    {
      "id": 1,
      "name": "Leanne Graham",
      "username": "Bret",
      "email": "Sincere@april.biz",
      "address": {
        "street": "Kulas Light",
        "suite": "Apt. 556",
        "city": "Gwenborough",
        "zipcode": "92998-3874",
        "geo": {
          "lat": "-37.3159",
          "lng": "81.1496"
        }
      },
      "phone": "1-770-736-8031 x56442",
      "website": "hildegard.org",
      "company": {
        "name": "Romaguera-Crona",
        "catchPhrase": "Multi-layered client-server neural-net",
        "bs": "harness real-time e-markets"
      }
    }
  ]
}

и я в data-id заношу id пользователей
5a4e7606cae38388326935.png
но при клике по строке в таблице на сайте у меня появляется окно в которое я должен вывести данные того пользователя чей id равен data-id.
подскажите как сделать вот такое условие:

если data-id = id пользователя то я вывожу данные пользователя чей id равен data-id.

и вообще правильно ли я решаю эту задачу. использую data атрибут для сравнения с id и выборки из json по условию

p.s: вывод в таблицу осуществляю так
клик

$.getJSON('http://localhost:5000/api/users', function(data) {
	console.log(data); // отслеживаем что выдает в консоль при использовании data
	for(var i=0; i<data.length; i++){
		// выводим циклом все из json в таблицу на сайте
		$('tbody').append(
			'<tr class="user" data-id="' + data[i].id +'"><td>' + data[i].id + 
			'</td><td>' + data[i].name + 
			'</td><td>' + data[i].username + 
			'</td><td>' + data[i].email + 
			'</td><td>' + data[i].phone + 
			'</td><td>' + data[i].website + '</td></tr>'
			);
	}
});

  • Вопрос задан
  • 147 просмотров
Пригласить эксперта
Ответы на вопрос 1
ms-dred
@ms-dred
Вечно что то не то и что то не так...
А где сам обработчик клика по строке в таблице?
var e = document.querySelectorAll('tr');
Array.prototype.forEach.call(e, function(e) {
    e.addEventListener('click', n)
});

function n(e) {
    var id = e.target.getAttribute('data-id');
    $.getJSON...............
         for..........
              if(id == data[i].id)
                   // че то делаем
   
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы