我在这里做错了什么?
我有以下代码:
HTML:
<div></div>
jQuery的:
for(var i = 0; i < 2; i++){
console.log('test');
$('div').text('sometext ');
}
我的输出:
sometext
我的期望:
sometext sometext
为什么这不会将文本打印到div两次?
答案 0 :(得分:6)
使用.append()
.text替换之前的内容。
for(var i = 0; i < 2; i++){
console.log('test');
$('div').append('sometext');
}
<强> Check Fiddle 强>
或强>
如果你真的想使用text
,你可以这样做
var html = '';
for(var i = 0; i < 2; i++){
console.log('test');
html += 'sometext ';
}
$('div').text(html);
<强> Fiddle 2 强>
将文本存储在变量中,然后在for循环后使用文本。
答案 1 :(得分:1)
我建议使用createTextNode调用而不是仅使用append,即:
for(var i = 0; i < 2; i++){
console.log('test');
$('div').append(document.createTextNode('sometext');
}
append(和appendTo)函数需要HTML,而不是文本。实际上,任何特殊字符(例如&lt;和&gt;)都不会被转义,而是以HTML格式处理。这可能是你想要的也可能不是。
的文档和示例答案 2 :(得分:0)
Print Footer At Bottom Of Page
<div
media="print"
class="no_screen"
style=" margin-bottom:0;
font-size:10px;
font-family:arial;
text-align:center;
width:100%;
letter-spacing:2px;
bottom: 0;
position: fixed;
color:black; "
>Designed By Good People.</div>
工作示例链接
jsfiddle.net/ROYALHUNTER/A85QL /