Yobanaris
@Yobanaris
Учусь отвечая.

Как вывести нужные поля из JSON?

Доброго времени суток.

На .txt файле есть данные Json
{"artist":"Eminem","title":"Rap God","status":"1"}

Например я хочу вывести только artist И title, status мне не надо.

нужно вывести на страницу в div и обновлять допустим каждые 5 секунд через setInterval

<div id="artist"></div>
<div id="title"></div>


js код (вчера помогли)

var json = 'https://www.site.com/json.txt'
function init(){
 let _json = JSON.parse(json)
//где-то тут надо сделать выбор, но что только не пробовал, не получается.
 let artist = document.getElementById('artist');
 let title= document.getElementById('title');
  artist.innerHTML = _json.artist;
  title.innerHTML = _json.title;
 setInterval(init,1000)
}
setInterval(init,1000)


Буду очень благодарен, заранее спасибо.
  • Вопрос задан
  • 586 просмотров
Решения вопроса 1
IsSavinykh
@IsSavinykh
Full-Stack Веб-разработчик, мобильный разработчик
Попробуйте вот так!
var url_json = 'https://www.site.com/json.txt';
function init(){
    fetch(url_json)
        .then(response => response.json())
        .then(_json => {
            let artist = document.getElementById('artist');
            let title= document.getElementById('title');
             artist.innerHTML = _json.artist;
             title.innerHTML = _json.title;
        });
}
setInterval(init,1000);

ИЛИ
var url_json = 'https://www.site.com/json.txt';
function init(){
    fetch(url_json)
        .then(response => response.json().then(_json => {
            let artist = document.getElementById('artist');
            let title= document.getElementById('title');
             artist.innerHTML = _json.artist;
             title.innerHTML = _json.title;
        }));
}
setInterval(init,1000);

В вашем примере ошибка - Метод JSON.parse() разбирает строку JSON, а вы передаёте не строку JSON, а url
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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