我有一个变量并用它来创建一个带有 class 属性的 HTML 元素:
var my_class="my_class";
$(this).after("<div class="+my_class+"></div>");
我按预期得到 <div class="my_class"></div>
,但是在添加带有空格的变量时:
var my_class="my_class id";
$(this).after("<div class="+my_class+"></div>");
我得到的是 <div class="my_class" id></div>
而不是 <div class="my_class id"></div>
。我该如何改变?
答案 0 :(得分:5)
您似乎希望 "
是 HTML 的一部分?因为执行(部分)您的代码会产生以下字符串:
const my_class="my_class id";
console.log("<div class="+my_class+"></div>");
这给出了 <div class=my_class id></div>
,即 "
没有 class
。因此,通过添加转义引号来添加它们:
const my_class="my_class id";
console.log("<div class=\""+my_class+"\"></div>");