我需要确定一个元素的类型,可能由它的id
属性标识。
例如,采用以下形式......
<form id='my-form'>
<input type='text' id='title' />
<textarea id='comment'></textarea>
</form>
我想找到一种方法来确定$('#title')
是一个文本框。
经过一些搜索后,我尝试了类似这样的事情,但它会返回undefined
。
$('#title').type
但有些事情似乎有效,我不知道为什么......
$('#my-form :input').each( function() {
alert(this.type);
} );
以上情况我会猜测text
和textarea
。但是当我使用第一个时,它会给出未定义的。
给定一个元素的ID,我该如何找到它的类型。
提前感谢。
答案 0 :(得分:2)
您可以通过编写
来获取元素的类型$("#target").attr('type');
或使用
$("#target").get(0).tagName // return tag name like INPUT,TEXTAREA ..etc
答案 1 :(得分:1)
input
是普通代码,您应该使用:
$('#my-form input').each( function() {
alert(this.type);
});
这将返回undefined:
$('#title').type
因为$("#title")
是jQuery对象而type
是HTML Element的属性。你可以从jQuery对象中获取HTML元素,如下所示:
$('#title').get(0).type
答案 2 :(得分:1)
您可以使用
if($('#title').is('input')){
alert('title in an input element')
} else if($('#title').is('textarea')){
alert('title in an textarea)
}
答案 3 :(得分:1)
$('#title').attr('type') ;
OR
$('#title').prop('type');