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;
}
但这不起作用。我该怎么做?
答案 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;