求教一个简单地JQ问题,如何获取某元素下没有class属性的子元素?

无D小公仔 2014-02-15 02:20:16
如题,比如$(".pg")元素下,没有class标签的a元素,如何获取?
我用var $(".pg > a").attr("class").length > 0获取不到啊。
求教,先谢谢了。
...全文
1718 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
泡泡鱼_ 2014-02-16
  • 打赏
  • 举报
回复
引用 9 楼 crying_boy 的回复:
//如果要求a是.pg的一级子元素
$('.pg > a:not([class])')
//不要求的话
$('.pg a:not([class])')
上面出现的class不是要你代入指定的样式,就是[class]这样不需要修改的
zhjdg 2014-02-15
  • 打赏
  • 举报
回复
上面那更好。高级浏览器直接用 .querySelectorAll('.pg > a:not([class])')过去了。 我一开始,一直定位在$(".pg")已经存在的前提下。
泡泡鱼_ 2014-02-15
  • 打赏
  • 举报
回复
//如果要求a是.pg的一级子元素
$('.pg > a:not([class])')
//不要求的话
$('.pg a:not([class])')
zhjdg 2014-02-15
  • 打赏
  • 举报
回复
这样写好点
$(".pg").children().filter(function(k,v){
	if(v.nodeName=='A'&&v.className !==''){
		return true;
	}
});
zhjdg 2014-02-15
  • 打赏
  • 举报
回复
$(".pg").children("a").filter(function(k,v){
	if(v.className ===''){
		return false;
	}
	return true;
});
无D小公仔 2014-02-15
  • 打赏
  • 举报
回复
引用 4 楼 u011461314 的回复:
$(".pg").children("a:not(.class)")
非常感谢,辛苦你了,还想问最后一个问题,对js不是很了解,就是not(.class)选中的是某个具体class样式,如果我只想判断是否有class这个属性该如何写?因为class样式不止有一个,一个是.next,一个是.prev。
无D小公仔 2014-02-15
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
直接用 $(".pg > a") 就可以了
但是.pg元素里还有几个a标签是有class属性的,我只想选那个没有class属性的
zhjdg 2014-02-15
  • 打赏
  • 举报
回复
$(".pg").children("a:not(.class)")
无D小公仔 2014-02-15
  • 打赏
  • 举报
回复
引用 2 楼 u011461314 的回复:
$(".pg").children(":not(.class)")
谢谢,那如何选A标签?
zhjdg 2014-02-15
  • 打赏
  • 举报
回复
$(".pg").children(":not(.class)")
天际的海浪 2014-02-15
  • 打赏
  • 举报
回复
直接用 $(".pg > a") 就可以了

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧