我无法将<input>
中HTML
标记的输入值存储到字符串数组中,我无法弄清楚我是怎么想这样做的。我对这可能是什么样子有了一个想法,但是我仍然无法让它发挥作用。
我认为我必须使用.push()
和.join()
方法以及+=
或+
运算符,我只是不知道放在哪里。
我做的第一件事是在Google How to store string value from input in an array of strings?
上搜索,但我只是在<form>
中使用HTML
标记找到了如何做到这一点,我不能这样做。我无法使用<form>
标记。
以下是我认为应该是
的代码
<body>
<input type="text" id="input" />
<button onclick="submit()">Submit</button>
<div id="placeholder"></div>
</body>
var inputName = document.getElementById("input");
var cityArray = [""];
// This triggers immediately when the browser loads
window.onload = (
// Pickup the string from input and add it on the previously created array
function submit() {
inputName.value;
for (var i = 0; i < array.length; i++) {
array[i];
}
}
);
我还需要一段代码,它会在按下<input>
按钮后立即删除Submit
字段中输入的值,这样用户就不需要按{{ 1}}以便键入第二个输入值。
答案 0 :(得分:2)
这是一个有效的代码段。
单击提交按钮时,将调用submit()
功能。由于您的数组被定义为全局数组,因此您可以在函数中访问它。您不需要迭代数组,只需使用.push()
方法就可以轻松地将字符串附加到数组中。
var inputName = document.getElementById("input");
var cityArray = [];
function submit() {
cityArray.push(inputName.value);
console.log(cityArray);
}
&#13;
<body>
<input type="text" id="input" />
<button onclick="submit()">Submit</button>
<div id="placeholder"></div>
</body>
&#13;
希望这有帮助!
答案 1 :(得分:1)
是的,您需要使用.push()
方法,它会将新输入的string
添加到array
,而无需迭代它:
function submit() {
cityArray.push(inputName.value);
}
您需要使用[]
var cityArray = [];
您无需在submit
事件处理程序中创建body.onload
函数,因为它不会在其外部访问,并可能导致错误。
<强>演示:强>
var inputName = document.getElementById("input");
var cityArray = [];
function submit() {
cityArray.push(inputName.value);
console.log(cityArray);
}
<input type="text" id="input" />
<button onclick="submit()">Submit</button>
<div id="placeholder"></div>
答案 2 :(得分:0)
Js Code
//declare your array like this
var yourArray = new Array();
//To add items to array:
yourArray.push(yourString);
//To get you can use indexing like(almost any other language)
yourArray[i]
//You can even set as an object array like this:
yourArray.push({
text: 'blablabla'
})
//So, in your case, filling up the array could be something like this:
var inputText = document.getElementById('input').value;
yourArray.push(inputText);
// show it
for (var i = 0; i < yourArray.length; i++) {
alert(yourArray[i]);
}
HTML脚本
<body>
<input type="text" id="input" />
<button onclick="submit()">Submit</button>
<div id="placeholder"></div>
</body>