Juicer 模板引擎
有一个需求,模板在渲染前需要对其内部的 select 进行添加 options,肯定有小伙伴会疑问什么要在渲染前更改模板,原因是这样的:此模板是两个弹出层的共用模板,页面加载的时候获得所有select options信息。有没有大牛可以提供下可行的思路...
Demo 如下:
类型:
{{=data.select}} // 引入的是字符串,非html标签
initModal();
/*初始化模板*/
function initModal() {
$.ajax({
url: 'wfConf/WfDSystemConfig.xml',
dataType: 'xml',
success: function(data) {
var options = '';
$(data).find('select selectOption').each(function() {
options += ''+
$(this).html()+
'';
});
var select = '' +
options +
'';
var selects = {data: select};
//本想着通过juicer生成的html更改模板,
//但是加入模板的select部分是字符串,并非想要的html代码
var content = $('#tpl').html(juicer($('#tpl').html(), selects));
$('#xxx').append(content);
}
});
}
ajax请求 data数据结构:
html 结构如下: