如何将输入字段中的字符串值存储在空数组中?

时间:2017-08-10 13:30:31

标签: javascript html arrays string

我无法将<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}}以便键入第二个输入值。

3 个答案:

答案 0 :(得分:2)

这是一个有效的代码段。

单击提交按钮时,将调用submit()功能。由于您的数组被定义为全局数组,因此您可以在函数中访问它。您不需要迭代数组,只需使用.push()方法就可以轻松地将字符串附加到数组中。

&#13;
&#13;
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;
&#13;
&#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>