【发布时间】:2014-08-19 02:01:02
【问题描述】:
我有以下 HTML:
<ul>
<li>Hello</li>
<li>World</li>
<li class="not_me">Hi</li>
</ul>
我想在一个 jQuery 调用中将列表项中的所有文本作为一个数组获取:
arr = $('li:not(.not_me)').map(function(el, i) {
return $(el).text();
});
预期结果:
arr = ['Hello', 'World']
实际结果:
arr = ['Hello', 'World', 'Hi']
为什么我的 :not() 排除不起作用?用引号 "not('.not_me')" 编写它会得到相同的结果。
这是一个显示问题的 JSFiddle:http://jsfiddle.net/cC8fT/683/
【问题讨论】:
-
我相信你的代码确实有效,只是你测试不正确。
-
1) 目前,
el是索引,i是元素。 2)它工作:jsfiddle.net/wMv9e -
你打印的数组不是那个表达式的结果。
-
我的 jQuery 应该如何获得想要的结果?