Показать сообщение отдельно
  #1 (permalink)  
Старый 01.06.2015, 20:03
Аспирант
Отправить личное сообщение для falkone Посмотреть профиль Найти все сообщения от falkone
 
Регистрация: 27.09.2014
Сообщений: 42

Задать background элементам генерируемым динамически (rivets.js)
Динамически генерирую и вывожу контент из
categoryModel
по средствам MVC rivets.js

var gallery = document.getElementById('gallery');

var categoryModel = {
	col1: [
		{categoryName: 'Category 1', categoryImg: 'url', categoryStyle: true, categoryId: 'tt'},
		{categoryName: 'Category 2', categoryImg: 'url', categoryStyle: true, categoryId: 'dd'}
	],
	col2: [
		{categoryName: 'Category 3', categoryImg: 'url'},
		{categoryName: 'Category 4', categoryImg: 'url'},
		{categoryName: 'Category 5', categoryImg: 'url'}
	]
};


var setImg = function () {
	var a = categoryModel.col1;
	for (var i = 0; i < a.length; i++) {
		var b = a[i].categoryName;
		console.log(b);
	};

	var div = document.getElementById('test');
	var el = div.getElementsByTagName('*');
		for(var i=0; i<el.length; i++) {
			el[i].id = b;
		};
};

setImg();
rivets.bind(gallery, {'categoryModel': categoryModel});


Данной конструкцией
var setImg = function () {
	var a = categoryModel.col1;
	for (var i = 0; i < a.length; i++) {
		var b = a[i].categoryName;
		console.log(b);
	};

	var div = document.getElementById('test');
	var el = div.getElementsByTagName('*');
		for(var i=0; i<el.length; i++) {
			el[i].id = b;
		};
};

пытаюсь присвоить id для каждого сгенерированного элемента, но в результате задает всем элементам одинаковый id. как сделать что бы присваивало каждому элементу свой id, имя которого я беру из categoryName.

Таким образом, хочу присвоить каждому блоку свой background. Возможно есть более правильный и логичный способ чем данный?
Ответить с цитированием