有没有办法通过元素名称来获取输入类型?
<form name="formQuestionnaire">
<input name="age" type="radio" id="age-1" />
<input name="age" type="radio" id="age-2" />
</form>
document.forms['formQuestionnaire'].elements['age']
返回单选/复选框/文本
有没有办法通过元素名称来获取输入类型?
<form name="formQuestionnaire">
<input name="age" type="radio" id="age-1" />
<input name="age" type="radio" id="age-2" />
</form>
document.forms['formQuestionnaire'].elements['age']
返回单选/复选框/文本
尝试
var x = document.forms['formQuestionnaire'].elements['age'];
x = x.length ? x[0] : x;
alert(x.type)
演示:小提琴
如果你想要多个元素。 小提琴
var x = document.forms['formQuestionnaire'].elements['age'];
for(var i=0;i< x.length;i++){
var u = x.length ? x[i] : x;
alert(u.type);
}
<form name="formQuestionnaire">
<input name="age" type="radio" id="age-1" />
<input name="age" type="checkbox" id="age-2" />
</form>
<input type="age" name="age" type="radio" />
...
var input = document.getElementById('age');
alert(input.type);
您还可以获得type
财产:
var type = document.forms["formQuestionnaire"].elements["age"].type;
它比 using 好一些getAttribute("type")
,因为在未定义type
属性的情况下(默认为text
),后者给出null
,而type
属性返回text
,因为它应该是。