Javascript 是否可以在JS中构造HTML,并使用document.write插入到HTML中?
我正在构建一个通过JSON/JSON插入HTML的web应用程序。我喜欢通过使用空白来打破这种局面,以便在JS中更轻松地浏览代码 我有这个: HTMLJavascript 是否可以在JS中构造HTML,并使用document.write插入到HTML中?,javascript,html,twitter-bootstrap,Javascript,Html,Twitter Bootstrap,我正在构建一个通过JSON/JSON插入HTML的web应用程序。我喜欢通过使用空白来打破这种局面,以便在JS中更轻松地浏览代码 我有这个: HTML JS $(passOptions.options)。每个(函数(){ var输出=“年度功率传递”+ “+this.premiere+”“+this.premiere” + ""; $(“#定价”)。追加(输出); }); 在JS之前是这样的: $(passOptions.options).each(function() { var
JS
$(passOptions.options)。每个(函数(){
var输出=“年度功率传递
”+
“+this.premiere+”
“+this.premiere”
+ "";
$(“#定价”)。追加(输出);
});
在JS之前是这样的:
$(passOptions.options).each(function() {
var output = "
<table id='placeholder2' class='table table-bordered'>
<tbody>
<tr>
<td>
<span class='primary-line'>Annual Power Pass</span><br /><span class='secondary-line'><a href='#'>Blockout Dates Apply</a></span>
</td>" +
"<td id='powerAP'>" + this.premiere + "<br />" + this.preferred
+ "</td>
</tr>
</tbody>
</table>";
$('#pricing').append(output);
});
$(passOptions.options)。每个(函数(){
变量输出=”
年度电力通行证
" +
“+this.premiere+”
“+this.premiere”
+ "
";
$(“#定价”)。追加(输出);
});
但是带有结构化HTML的JS版本不起作用,我还收到了一个“uncaughtsyntaxerror:unexpectedtoken-liked”错误
因此,我回到了“缩小”版本,因为它工作正常
在JS中查看/浏览HTML更容易的地方,还有其他方法可以做到这一点吗
顺便说一句,这将生活在Sharepoint中,用户将能够更新应用程序的某些部分
如果您没有注意到,我正在使用Bootstrap3构建它
提前感谢。如果继续将未扫描的数据连接到标记中,则可能会创建无效的HTML,并使自己面临一些XSS攻击,同时使代码无法维护 您需要的是一个JavaScript模板引擎。有很多可供选择。我更喜欢。很多人都喜欢 Swig文档中的示例:
{% block tacos %}
//...
{% endblock tacos %}
{% block burritos %}
{% if foo %}
// ...
{% endif the above will render if foo == true %}
{% endblock burritos %}
另请参见:如果继续将未扫描的数据连接到标记中,则可能会创建无效的HTML并使自己面临某些XSS攻击,同时使代码无法维护 您需要的是一个JavaScript模板引擎。有很多可供选择。我更喜欢。很多人都喜欢 Swig文档中的示例:
{% block tacos %}
//...
{% endblock tacos %}
{% block burritos %}
{% if foo %}
// ...
{% endif the above will render if foo == true %}
{% endblock burritos %}
另请参见:如果继续将未扫描的数据连接到标记中,则可能会创建无效的HTML并使自己面临某些XSS攻击,同时使代码无法维护 您需要的是一个JavaScript模板引擎。有很多可供选择。我更喜欢。很多人都喜欢 Swig文档中的示例:
{% block tacos %}
//...
{% endblock tacos %}
{% block burritos %}
{% if foo %}
// ...
{% endif the above will render if foo == true %}
{% endblock burritos %}
另请参见:如果继续将未扫描的数据连接到标记中,则可能会创建无效的HTML并使自己面临某些XSS攻击,同时使代码无法维护 您需要的是一个JavaScript模板引擎。有很多可供选择。我更喜欢。很多人都喜欢 Swig文档中的示例:
{% block tacos %}
//...
{% endblock tacos %}
{% block burritos %}
{% if foo %}
// ...
{% endif the above will render if foo == true %}
{% endblock burritos %}
另请参见:我用过类似的东西。。。对我来说更容易阅读
var output = [
"<table>",
"<tr>",
"<td>",
"Content Here"
"</td>",
"</tr>",
"</table>"
].join("\n");
var输出=[
"",
"",
"",
“此处的内容”
"",
"",
""
].加入(“\n”);
output
现在是一个从表中构建的字符串,当添加到代码中时,使用\n
对换行符进行连接。我使用了类似这样的东西。。。对我来说更容易阅读
var output = [
"<table>",
"<tr>",
"<td>",
"Content Here"
"</td>",
"</tr>",
"</table>"
].join("\n");
var输出=[
"",
"",
"",
“此处的内容”
"",
"",
""
].加入(“\n”);
output
现在是一个从表中构建的字符串,当添加到代码中时,使用\n
对换行符进行连接。我使用了类似这样的东西。。。对我来说更容易阅读
var output = [
"<table>",
"<tr>",
"<td>",
"Content Here"
"</td>",
"</tr>",
"</table>"
].join("\n");
var输出=[
"",
"",
"",
“此处的内容”
"",
"",
""
].加入(“\n”);
output
现在是一个从表中构建的字符串,当添加到代码中时,使用\n
对换行符进行连接。我使用了类似这样的东西。。。对我来说更容易阅读
var output = [
"<table>",
"<tr>",
"<td>",
"Content Here"
"</td>",
"</tr>",
"</table>"
].join("\n");
var输出=[
"",
"",
"",
“此处的内容”
"",
"",
""
].加入(“\n”);
output
现在是一个从表中构建的字符串,在添加到代码中时使用\n
对换行符进行连接。是的,javascript不喜欢这些空行。如果您想格式化html,可以采用以下两种方式之一:1-在每个html行的末尾加反斜杠
$(passOptions.options).each(function() {
var output = "\
<table id='placeholder2' class='table table-bordered'>\
<tbody>\
<tr>\
<td>\
<span class='primary-line'>Annual Power Pass</span><br /><span class='secondary-line'><a href='#'>Blockout Dates Apply</a></span>\
</td>" +
"<td id='powerAP'>" + this.premiere + "<br />" + this.preferred
+ "</td>\
</tr>\
</tbody>\
</table>";
$('#pricing').append(output);
});
$(passOptions.options)。每个(函数(){
变量输出=”\
\
\
\
\
年度电力通行证
\
" +
“+this.premiere+”
“+this.premiere”
+ "\
\
\
";
$(“#定价”)。追加(输出);
});
或2—
连接输出:
var output = "<table id='placeholder2' class='table table-bordered'>";
output += "<tbody>";
output +="<tr>";
output +="<td>";
output+="<span class='primary-line'>Annual Power Pass</span><br /><span class='secondary-line'><a href='#'>Blockout Dates Apply</a></span>";
....etc
var输出=”;
输出+=“”;
输出+=“”;
输出+=“”;
输出+=“年功率传递
”;
等
是的,javascript不喜欢那些空行。如果您想格式化html,可以采用以下两种方式之一:1-在每个html行的末尾加反斜杠
$(passOptions.options).each(function() {
var output = "\
<table id='placeholder2' class='table table-bordered'>\
<tbody>\
<tr>\
<td>\
<span class='primary-line'>Annual Power Pass</span><br /><span class='secondary-line'><a href='#'>Blockout Dates Apply</a></span>\
</td>" +
"<td id='powerAP'>" + this.premiere + "<br />" + this.preferred
+ "</td>\
</tr>\
</tbody>\
</table>";
$('#pricing').append(output);
});
$(passOptions.options)。每个(函数(){
变量输出=”\
\
\
\
\
年度电力通行证
\
" +
“+this.premiere+”
“+this.premiere”
+ "\
\
\
";
$(“#定价”)。追加(输出);
});
或2—
连接输出:
var output = "<table id='placeholder2' class='table table-bordered'>";
output += "<tbody>";
output +="<tr>";
output +="<td>";
output+="<span class='primary-line'>Annual Power Pass</span><br /><span class='secondary-line'><a href='#'>Blockout Dates Apply</a></span>";
....etc
var输出=”;
输出+=“”;
输出+=“”;
输出+=“”;
输出+=“年功率传递