<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<center>
<input type="text" id="item" onkeydown="if (event.keyCode == 13) document.getElementById('getItem').click()">
<button id="getItem" onclick="getItem()">Add to List</button>
<button onclick="getClearItem()">Clear</button> <hr color="gray" id="lineDivider">
<button onclick="getClearList()">Clear List</button> <br>
<textarea readonly id="list"></textarea>
</center>
</body>
<script>
function getItem() {
if (document.getElementById("list").value == "") {
document.getElementById("list").value += document.getElementById("item").value;
}
else {
document.getElementById("list").value += \n document.getElementById("item").value;
}
}
function getClearItem() {
document.getElementById("item").value = ""
}
function getClearList() {
document.getElementById("list").value = ""
}
</script>
</html>
这就是我想要做的事情:
在“项目”文本框中输入一些文本,然后单击“添加到列表”按钮。然后,如果“List”textarea为空,则添加文本而不插入换行符。但是如果textarea中已经存在一些文本,则会插入换行符然后添加文本。我不确定我做错了什么,或者甚至不应该做什么。
当我删除if else语句并使用document.getElementById("list").value += document.getElementById("item").value;
时,它可以工作。当我添加\ n时,它不会向空白字段添加任何内容。
如果我的问题不清楚,我道歉。
答案 0 :(得分:5)
您必须引用换行符,如&#34; \ n&#34;
document.getElementById("list").value += "\n" + document.getElementById("item").value;