Задать вопрос

Обработка и вставка json данных?

Здравствуйте, уважаемые специалисты!



Существует задача, которую немогу решить. Всю голову уже сломал.



1. Есть несколько контейнеров вида:

<div id='12'></div><div id='13'></div><div id='14'></div><div id='17'></div>




2. Строка json, которую получаю с сервера:



[{"week_num_return":"14","plan_amount_return":"15","fact_amount_return":"18"},{"week_num_return":"17","plan_amount_return":"13","fact_amount_return":"0"}]




Необходимо обработать получаемый json и вставить данные в div так, чтобы week_num_return соответствовал id ячейки.



Пробовал так:



$('.fc-sum-pfp-number').each(function(i, _cell) {
     $(json).each(function(i2) {
          $(_cell).append(json[i2].plan_amount_return);
      });
});




Но это, конечно, неверно. Вставляются все данные в каждый контейнер.



Решение на поверхности, но у меня мало опыта работы с JavaScript и jQuery.



Заранее спасибо за помощь!
  • Вопрос задан
  • 11258 просмотров
Подписаться 7 Оценить Комментировать
Решения вопроса 1
PML
@PML
Web-developer
<script>
	<script>
	$(document).ready(function() {
		$('.article').click(function(){
			var articleView = $(this).parent('.Node').find('.article');
			var viewArticle = $(this).parent('.Node').find('.articleBlock');
			var url = $(this).attr('data');
			$.getJSON(url, function(data){
				$.each(data, function(i, field){
					var productCount = viewArticle.append('<div class="articleBlocPrice">'+field.price+' руб.</div><div class="articleBlockDote"></div><div class="articleBlockName">'+field.name+'</div><div style="clear:both"></div>');
						if ( articleView.attr("data") == productCount ) {
							articleView.removeAttr("data")
							} else {
							articleView.attr("data", productCount);
						}
				});
			});
		});
	});
	</script>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
@serega_kaktus
Программист-самоучка, фрилансер
for (var i = 0; i < json.length; i++) {
    var data = "some data" //может быть текст или html
    $('#' + json[i].week_num_return).append(data);

}


Тут очень хорошие доки на русском jQuery
Ответ написан
Комментировать
PML
@PML
Web-developer
Может поможет?

Небольшая выдержка из моей работы.

Ответ написан
Комментировать
beliyadm
@beliyadm
because open source matters
Попробую вставить сопутствующий вопрос.
Можно ли средствами MySQL оперировать строкой с JSON данными?
То есть имея строку
{«week_num_return»:«17»,«plan_amount_return»:«13»,«fact_amount_return»:«0»}]
только лишь в запросе средствами мускуля изменить значение «week_num_return»?
Писать под каждый запрос регулярку не выход.
Готовить строку на входе средствами php — сейчас так и делаю, но неудобно
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы