使用javascript中的HTML保留缩进格式
reserve indented format using HTML in javascript
在不使用任何模板引擎的情况下,我经常写这样的
success(data) {
var html = '';
if (data) {
$.each(data.result, function() {
html += '<button type="button" class="btn btn-navbar" data toggle="collapse" data-target=".nav-collapse">'
html += '<span class="icon-bar"></span>'
html += '<span class="icon-bar"></span>'
html += '<span class="icon-bar"></span>'
html += '</button>'
});
$('something').append(html);
}
}
如果我想要的html是巨大的,很难阅读,有什么方法可以保持上面的缩进吗?
您可以使用回溯定义多行字符串:
var buttonTemplate = `<button type="button" class="btn btn-navbar" data toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>`;
if (data) {
$.each(data.result, function() {
$(buttonTemplate).appendTo('#something');
});
}
这是工作演示。
注意它是ECMAScript 6标准的一部分,在某些浏览器中可能不起作用:
ES6模板字符串兼容性表
您可以在更易于处理的数组中创建和存储模板。此外,您还可以存储多个模板,并使用
Templates = {};
Templates.temp = [
`<button type="button" class="btn btn-navbar" data toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>`
].join("'n");
if (data) {
$.each(data.result, function() {
$('#something').append($(Templates.temp)); // into jQuery object
});
}
注意:"in join("''n")不同于单引号join('''n')
在html中,将模板保存在类型为text/template
的脚本标记中(任何类型不等于text/javascript
的类型都将被浏览器忽略)。
<script type="text/template" id="btnTpl">
<button type="button" class="btn btn-navbar" data toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</script>
然后你可以在你的javascript代码中使用它:
var buttonTpl = $('#btnTpl').html();
if (data) {
$.each(data.result, function() {
$(buttonTpl).appendTo('#something');
});
}
相关文章:
- 如何格式化字符串以修复Javascript中的缩进
- Vim-当代码的文字字符串中有括号时,如何实现正确的缩进
- Javascript 意外返回值,带有特定的缩进
- JQuery:如何在循环 dom 元素时正确缩进字符串
- JavaScript将缩进文本转换为HTML列表重复顶层<李>'s为<ul>'s
- 如何避免/最小化列表中列表的缩进
- vim JavaScript缩进插件-命令是什么
- 使用 PEG.js 解析缩进级别
- 崇高的文本新行失去缩进
- Redactor文本编辑器– 在代码视图中重新缩进缩小的HTML
- NVD3.js缩进树问题
- 缩进第二行的文本块
- 从 coffeescript 编译到 javascript 后保持缩进
- 使用 d3.xml 而不是 d3.json 绘制可折叠缩进树
- 超级鱼子项中的文本缩进继承
- 对文本区域段落的每一首行应用缩进
- 在 VIM 上的脚本标记中正确缩进 JavaScript
- 更改Netbeans为javascript函数参数自动设置空格缩进格式的方式
- 使用javascript中的HTML保留缩进格式
- 将html文件导入<text区域>格式化为带有缩进和颜色的HTML