我正在尝试使用javascript创建一个HTML块。为了保持我的代码清洁,我试图将代码放在单独的行上。它给我一个错误,说有一个不正确的<
字符,但我从未关闭字符串。这是我的代码,请帮忙!谢谢!
var form = jQuery('
<div id="link">
<div id="link-options">
<p class="howto">Add a quote to the page</p>
<div>
<label><span>Text<br/></span><textarea name="text" id="text"></textarea></label>
</div>
<div>
<label><span>Person</span><input type="text" name="person"></label>\
</div>
</div>
<div class="submitbox">
<div id="update">
<input type="button" id="quote-submit" class="button-primary" value="Insert Shortcode" name="submit" />
</div>
</div>
</div>');
答案 0 :(得分:1)
虽然技术上没有关闭字符串,但字符串中有新行。 Javascript会将新行解释为紧密字符串字符。因为它正在关闭字符串,所以您收到错误。尝试在行尾添加一个转义符来转义换行符:
var form = jQuery('\
<div id="link">\
<div id="link-options">\
<p class="howto">Add a quote to the page</p>\
<div>\
<label><span>Text<br/></span><textarea name="text" id="text"></textarea></label>\
</div>\
<div>\
<label><span>Person</span><input type="text" name="person"></label>\
</div>\
</div>\
<div class="submitbox">\
<div id="update">\
<input type="button" id="quote-submit" class="button-primary" value="Insert Shortcode" name="submit" />\
</div>\
</div>\
</div>');
答案 1 :(得分:0)
在js中执行多行变量时,我喜欢使用join()函数。
var form = [
'<div>',
'<p>blah blah</p>',
'<div>'
].join('\n');
答案 2 :(得分:0)
我喜欢concat:
var form = jQuery(
'<div id="link">' +
'<div id="link_options">' +
'<p class="howto">how to add a quote to the page</p>' +
'</div>' +
'</div>'
);