抓取用户输入

时间:2012-06-02 16:06:36

标签: javascript html forms input

First name: <input type="text" name="firstname"></input>
<input type="submit" value="Submit" />

假设我上面有简单的表格。我如何抓住用户在JS的First Name字段中输入的内容。我试过了:

document.getElementsByTagName("input")[1].onclick = function() {
    inputted = document.getElementsByTagName("input")[0].innerHTML;
}

但这不起作用。我该怎么做?

3 个答案:

答案 0 :(得分:2)

使用value进行文字输入:

 inputted = document.getElementsByTagName("input")[0].value;

还要确保在变量中添加var关键字,这样就不会创建全局变量:

var inputted = document.getElementsByTagName("input")[0].value;

您也不应该关闭</input>代码,因为它是自动关闭标记:

<input type="text" name="firstname" />

顺便说一下,您还可以使用以下语法获取元素值:

formName.elementName.value;

或者

document.forms['formName'].elementName.value;

在你的情况下,它将是:

var inputted = formName.firstname.value;

或者

var inputted = document.forms['formName'].firstname.value;

formName替换为<form>元素的名称。


最后,如果您对其应用value,也可以获取元素id

<input type="text" name="firstname" id="firstname" />

然后使用getElementById

var inputted = document.getElementById('firstname');

答案 1 :(得分:0)

 var inputs=document.getElementsByTagName("input"),
      i=inputs.length;
 //
    while(i--){
               inputs[i].onclick=myClickEventHandler;
     };
//
 function myClickEventHandler(evt){
    var myVal;
     switch (this.name) {

        case 'firstname':

             myVal = this.value;
            break;
    };
 };

答案 2 :(得分:-1)

如果您使用的是表单,可以尝试使用以下内容:

var input = document.forms["formName"]["fieldName"].value;

否则,请使用.value属性:

var input = document.getElementsByTagName("input")[0].value;