Отображение JSON в полях ввода HTML с использованием AJAX? - PullRequest
0 голосов
/ 28 ноября 2010

Я очень новичок в AJAX и Javascript и мне нужно немного помочь с этим кодом.

Вот фрагмент JSON, который я использую

{"URL":"www.youtube.com","Total URLs":132,"Completed":63}

Мне нужнополучите каждое из этих значений и отобразите в различных текстовых полях ввода HTML, используя AJAX.

Current URL: <input type="text" name="urlqueue">
Total URLs: <input type="text" name="total">
Completed: <input type="text" name="completed">

Сейчас у меня есть

 ajaxRequest.onreadystatechange = function(){
  if(ajaxRequest.readyState == 4){
   document.form.total.value = ajaxRequest.responseText;
  }
 }
 ajaxRequest.open("GET", "test_results.php", true);
 ajaxRequest.send(null); 

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

Как отобразить JSON в полях ввода HTML с помощью AJAX?

Ответы [ 2 ]

0 голосов
/ 28 ноября 2010

Обратите внимание, что при создании AJAX и получении ответа текст ответа не является объектом JavaScript.Это просто строка, поэтому вы должны оценить строку в JavaScript Object.Следующий код произведет это быстро.Но Дуглас Крокфорд, который является мастером JavaScript, говорит, что «eval - зло».

var data = eval('(' + ajaxRequest.responseText + ')');
document.form.total.value = data[Total URLs]

также я хочу помнить, что избегайте пробелов в именах свойств.Например, у вас должно быть свойство с именем «Total_URLs» или «TotalURLs» и т. Д. Вместо «Total URLs»

0 голосов
/ 28 ноября 2010

Разобрать JSON, используя библиотеку синтаксического анализа JSON или eval. Обратите внимание, что использование eval может быть очень опасным, поскольку вы можете ввести уязвимости межсайтового скриптинга, если они используются неправильно.

Полученный объект будет иметь значения, поэтому вы можете установить каждое поле индивидуально, например:

document.form.total.value = jsonObject["Total URLs"];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...