7

我正在尝试使用 JQuery 来获取控件类型,以下是我正在使用的代码。

$('#selCity').attr('type')

其中 selCity 是 select 类型。当我尝试上面的代码时,它返回未定义,但是当我使用带有 Javascript 的替代代码时,它返回正确的类型。

请查看这个小提琴以清楚地理解它:http: //jsfiddle.net/Ye8e9/

有人可以建议我如何使用 JQuery 正确实现这一目标吗?这是 JQuery 的问题还是我犯了一个错误?

4

4 回答 4

10

采用

$('#selCity').prop('type')

从 jQuery 1.6 开始,.attr() 方法为尚未设置的属性返回 undefined。此外,.attr() 不应用于普通对象、数组、窗口或文档。要检索和更改 DOM 属性,请使用 .prop() 方法。

参考

演示

于 2012-11-21T12:36:47.677 回答
5

如果你的意思是标签的类型,使用这个

 $("#selCity").get(0).tagName

在此处查看您的演示

于 2012-11-21T12:29:03.303 回答
0

使用 nodeName 获取“标签类型”。'.type' 指的是 select 没有的属性 'type'。

document.getElementById('selCity').nodeName
于 2012-11-21T12:30:11.887 回答
0

你得到未定义,因为选择中没有类型属性。

试试这个

$('#selCity')[0].tagName;
于 2012-11-21T12:48:00.860 回答