我只是想用一个从“1”到“5”的数字列表替换我的P标签。但我正在使编号部分成为一个功能。更换P标签时如何调用该功能?这是我到目前为止编写的代码。
<script type="text/javascript">
function countNum() {
var i=1;
for (i=1;i<=5;i++) {
document.write(i+"<br />");
}
}
document.getElementById("paragraph").innerHTML=countNum();
</script>
</head>
<body>
<p id="paragraph">
Hello world.
</p>
</body>
答案 0 :(得分:4)
function getHtml() {
var html = '';
var i=1;
for (i=1;i<=5;i++) {
html += i+"<br />";
}
return html;
}
现在使用此方法分配给HTML。
document.getElementById("paragraph").innerHTML=getHtml();
答案 1 :(得分:3)
我并没有真正回答你的问题(另外两个已经有),但另一种巧妙的做法是做你想做的事情:
document.getElementById('paragraph').innerHTML = [1, 2, 3, 4, 5].join('<br>')
我在[1, 2, 3, 4, 5]
数组上使用join
方法。
答案 2 :(得分:1)
您可以将您的功能添加到这样的段落中。
function countNum () {
var elem = document.getElementById("paragraph");
var i = 1;
var innerElem;
for (i=1; i<=5; i++) {
innerElem = document.createElement("span");
innerElem.appendChild(document.createTextNode(i.toString()));
innerElem.appendChild(document.createElement("br"));
elem.appendChild(innerElem);
}
}
countNum();
答案 3 :(得分:0)
你必须返回你的字符串,而不是直接写入文档:
function countNum() {
var i=1;
var string = "";
for (i=1;i<=5;i++) {
string += i+"<br />";
}
return string;
}
document.getElementById("paragraph").innerHTML=countNum();
答案 4 :(得分:0)
<p id="paragraph">
Hello world.
</p>
<script type="text/javascript">
function countNum() {
var i=1;
var result = "";
for (i=1;i<=5;i++) {
result = result + i+ "<br />";
}
return result;
}
document.getElementById("paragraph").innerHTML=countNum();
</script>
答案 5 :(得分:0)
只需使用.call
代替.innerHTML
:
document.getElementById("paragraph").call=countNum();
答案 6 :(得分:0)
<html>
<body>
<p id="paragraph">
Hello world.
</p>
<script type="text/javascript">
function countNum() {
var i=1;
for (i=1;i<=5;i++) {
document.write(i+"<br />");
}
}
document.getElementById("paragraph").innerHTML=countNum();
</script>
</body>
</html>
尝试将您的脚本放在p标记下面的正文中。