可能是一个愚蠢的问题,但有没有一种方法可以在JavaScript中找到表单元素的类型(文本,复选框等),然后通过名称或ID查找它?无论是在普通的旧JavaScript中还是使用jQuery风格的语法或方法都是理想的。
示例:
<input type="text" name="my_text_input" id="my_text_input"/>
<script>var element = document.getElementById('my_text_input'); // now how to get the element type?</script>
我不是在寻找替代方案,这正是我想要做的。我正在制作一种需要收集这些信息的屏幕抓取工具。
答案 0 :(得分:6)
type
属性会给你这个......
document.getElementById('my_text_input').type;
但是,您还使用jQuery标记了问题,因此您可以使用...
$('#my_text_input').attr('type');
答案 1 :(得分:0)
$('#form_id input').each(function() {
console.log($(this).attr('type'));
});
答案 2 :(得分:0)
$('#my_text_input').attr('type');
同样,您可以获得任何属性....类,标题或任何
$('#my_text_input').attr('class');
//检索classname
答案 3 :(得分:0)
试试这个:
<!DOCTYPE html>
<html>
<body>
<script language="JavaScript" type="text/javascript">
function submit_form()
{
var len = document.form1.elements.length;
for(var i = 0 ; i< len;i++){
if(document.form1.elements[i].type == "text")
alert(document.form1.elements[i].value);
}
}
</script>
<form name="form1" onsubmit="submit_form();">
First name: <input type="text" name="FirstName" value="Mickey"><br>
First name: <input type="textarea" name="FirstName" value="Mickey"><br>
Second name: <input type="text" name="SecondName" value="Mickey"><br>
Last name: <input type="text" name="LastName" value="Mouse"><br>
<input type="submit" value="Submit">
</form>
</body>
</html>