有没有办法通过元素名称来获取输入类型?
<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,因为它应该是。