dongdongleng的专栏

I can do anything I want to do

div带有多个class元素怎么取?

今天工作偶遇一个div 如下:<div class="aa bb">fdsafdsafdsafds</div>
,页面要求这个div隐藏,第一时间想到用Jquery去做,没有办法,刚刚学习的东东都想试试身手,马上写出代码:

 

 

 

 

发现没有执行,悲剧了,难道是没有取到对象?添加个alert,看看到底有没有取到div对象:

 

 

var $a = $("div.aa bb");

 

 

alert($a[0]);

 

 

果然不出所料,没有得到对象。为什么呢?

 

 

查询帮助文档后发现,并没有这种多元素方式的写法,那么到底怎么解决呢?

 

 

思考片刻,觉得既然不行那我就换个思路,我过滤你可以吧?于是代码如下:$("div.aa").filter(".bb").hide();

 

 

但是这样想确实是太麻烦了,想到 class也是div的属性之一,用属性解决肯定是可以,于是代码如下:

 

 

$("div[class='aa bb']").hide();

 

 

写好之后,想想还是有点麻烦,没有更简单的方法?jquery的精髓是最少的代码做最多的事情,jquery的链式操作是他最吸引我的地方,那么这里能不能使用链式操作呢?片刻,实验成功,代码如下:

 

 

$("div.aa.bb").hide();

 

 

哎,太简单了,怎么当时怎么没有想到呢?悲剧。

 

 

ps:此处只是说明class多元素如何去对象,关于读者认为直接设置ID取值,本人不做解释

阅读更多
个人分类: JQuery积累
上一篇VS2010 页面中检测到有潜在危险的 Request.Form 值。
下一篇jquery.autocomplete.js 参数属性介绍
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭