Javascript:为什么我得到.className'undefined'但.html()的工作原理

时间:2014-09-14 09:01:02

标签: javascript classname

我知道这个问题已多次发布,但我无法理解我的问题:

当我这样做时:

alert($('#CalendarType').className);

我一直在警报中未定义,一开始我在网上搜索我认为这是因为我的div已经加载了但是我尝试了其他的东西:

alert($('#CalendarType').html());

这项工作......我无法理解。如果有人能解释我做错了什么

2 个答案:

答案 0 :(得分:2)

$(someSelector)返回一个jQuery对象,而不是一个DOM对象。

className是DOM对象的属性,而不是jQuery对象的属性。

您可以从jQuery对象中提取DOM对象:

alert($('#CalendarType')[0].className);

或者使用jQuery attr方法:

alert($('#CalendarType').attr('class'));

答案 1 :(得分:1)

您可以改用.attr()函数。我相信这会奏效:

alert($('#CalendarType').attr("class"));