【发布时间】:2014-03-13 08:15:10
【问题描述】:
我要做的是在文本区域中输入名字和姓氏,一旦点击“输入名称”按钮,名称将进入一个数组,在那里对其进行排序,然后放回一个字符串并显示在“输出”框。每次输入名称时,都会将其添加到同一个数组中并进行排序。
我能够将名称放入一个数组中,并显示在输出框中,但我不能让它将名称添加到列表中,或者按字母顺序对它们进行排序。它只是取代了它们。我以为我可以使用 push 添加名称,但它似乎不起作用。任何帮助将不胜感激。提前致谢。
这是我目前所拥有的:
<body>
<p>
<label for="name">Enter First and Last Name: </label>
<input id="name" name="name" />
<input type="button" id="addNameBtn" value="Enter Name" />
<input type="button" id="clearBtn" value="Clear Output" />
</p>
<p>
<label for="output">Output:</label><br />
<textarea cols="20" rows="15" id="output" ></textarea>
</p>
<script type="text/javascript" src="js/main.js"></script>
<script type="text/javascript">grabText();</script>
</body>
</html>
`function grabText(){
var arr = [];
var arr2 =[];
var len = arr.length;
for (var i = 0; i<len; i++);
{
var txt = document.getElementById('name').value;
var textArea = document.getElementsByTagName('textarea');
if (txt !=="")
{
arr.push(txt);
}
}
arr2.push(arr);
arr2.sort();
var arrStr = arr2.join();
textArea[0].value = arrStr;
document.getElementById('name').value = '';
}
var btn = document.getElementById('addNameBtn');
btn.onclick = grabText;`
【问题讨论】:
标签: javascript arrays sorting