Можно ли использовать строки HTML в коде JS при использовании шаблонов jquery?

В нашем приложении мы используем JavaScript для накачки входящих данных JSON в представительный HTML. Я использовал шаблон JQuery для этого. Я начал замечать, что я использую все больше и больше строк HTML в коде JS. Например:

render = function(data, parent){

   var header, analyticsHtml, analyticsTmpl;
   header= parent.find(".header");
   header.append('<H3>'+ i18n['header']+'</H3>');
   analyticsHtml = '<div><div class="floatLeft" id="analytics"><div class="gt"><span>01</span><br />i18n['Text1']</div></div></div>';
   parent.append(analyticsHtml);
   analyticsTmpl = "....blah...";

   $('#analytics').append($.tmpl(analyticsTmpl, data));
   .
   .
   .

}

Можно ли использовать строки HTML в коде JS?

2 ответа

Решение

Да, все в порядке, но вы должны экранировать символы кавычек, которые вы используете с "\".

analyticsHtml = '<div><div class="floatLeft" id="analytics"><div class="gt"><span>01</span><br />' + i18n['Text1'] + '</div></div></div>';

В своем коде вы забыли операторы "+" для ссылки на массив "i18n".

Я бы сказал, что это нормально. Я пытаюсь определить шаблоны в нелокальной переменной в верхней части класса /codefile/closure и, если они длинные, разбить их на несколько строк, чтобы сделать их более читабельными,

Другие вопросы по тегам