Jquery каждая функция (ключ, значение) возвращает только последний ключ и значение - PullRequest
0 голосов
/ 24 ноября 2018

1. Запрос каждого результата функции (ключ, значение) возвращает только последний ключ и значение.2. Он работает нормально в окне предупреждения. 3. При получении данных в HTML он возвращает только последний ключ и значение

.

var result = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';

$.each($.parseJSON(result), function(k, v) {
  console.log(k + ' is ' + v);
  $('#stage').html('<p>' + k +':' + v+ '</p>'); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id ="stage" style = "background-color:#cc0;">
   STAGE
</div>

Я не знаю, как получить все значения в HTML, пожалуйста, помогите заранее.

Ответы [ 2 ]

0 голосов
/ 24 ноября 2018

Вы также можете использовать .append() вместо .html()

var result = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';

$.each($.parseJSON(result), function(k, v) {
  //console.log(k + ' is ' + v);
  $('#stage').append('<p>' + k + ':' + v + '</p>');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="stage" style="background-color:#cc0;">
  STAGE
</div>
0 голосов
/ 24 ноября 2018

Потому что вы переписываете HTML на #stage в каждом цикле.Вам нужно хранить содержимое в переменной и после завершения цикла вставить resutl в документ.

var result = '{"FirstName":"John","LastName":"Doe","Email":"johndoe@johndoe.com","Phone":"123 dead drive"}';

var html = "";
$.each($.parseJSON(result), function(k, v) {
  html += '<p>' + k +':' + v+ '</p>';
});
$('#stage').html(html); 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id ="stage" style = "background-color:#cc0;">
   STAGE
</div>
...