我编写代码来分割单词,结果将以单独的行显示。 第一个代码效果很好: 点击!
<p id="demo"></p>
<script>
function run() {
var str = "Hello";
var res = str.split("").join("<br/>");
document.getElementById("demo").innerHTML = res;
}
</script>
结果:H
È
升
升
Ø
问题是当我更改p标签时,它没有工作:
<button onclick="run()">Click!</button>
<input type="text" id="demo" name="demo" />
<script>
function run() {
var str = "Hello";
var res = str.split("").join("<br/>");
document.getElementById("demo").value = res;
}
</script>
请帮我解决这个问题。提前谢谢!
答案 0 :(得分:2)
输入中不能包含新行。尝试使用textarea标签:
<button onclick="run()">Click!</button>
<textarea type="text" id="demo" name="demo"></textarea>
<script>
function run() {
var str = "Hello";
var res = str.split("").join("\n");
document.getElementById("demo").innerHTML = res;
}
</script>
答案 1 :(得分:2)
.value
元素的<input type="text">
被解析为纯文本,而不是HTML。设置为"<br>"
的{{1}}会导致.value
在"<br>"
答案 2 :(得分:0)
您无法在input
内插入HTML,但您可以在textarea
内插入文字并使用\n
(新行)字符代替<br>
:
function run() {
var str = "Hello";
var res = str.split("").join("\n");
document.getElementById("demo").value = res;
}
&#13;
<button onclick="run()">Click!</button>
<textarea type="text" id="demo" name="demo"></textarea>
&#13;