如何使用jQuery获得两个类所选元素的属性?
How can I get attributes of elements selected with two classes using jQuery
这似乎应该是简单的,但我有困难。
我需要在我的DOM
中选择具有checkbox
和selected
类应用的元素,所以我使用JavaScript代码:
var queries = $(".checkbox.selected");
for (var i = 0; i < queries.length; i++) {
console.log(queries[i]);
}
输出:
[<div class="checkbox selected">Option 1</div>,
<div class="checkbox selected">Option 2</div>]
问题是,当我使用queries[i].text()
(在循环内)时,我得到:
Uncaught TypeError: queries[i].text is not a function
所以它看起来好像我的queries
不是DOM对象的列表。这怎么可能?我已经尝试过这种多种方式,我根本无法访问Option 1
或Option 2
文本。有人遇到这个错误吗?我是否正确地访问了元素?
通过索引访问时,没有这些元素的jQuery对象,只有普通元素。你必须这样做:
var queries = $(".checkbox.selected");
for (var i = 0; i < queries.length; i++) {
console.log($(queries[i]).text());
}
但这很难看,使用jquery的own each:
$(".checkbox.selected").each(function(){
console.log($(this).text());
});
所以它看起来好像我的查询不是DOM对象列表
尝试使用.textContent
在queries[i]
DOM
元素中返回文本
var queries = $(".checkbox.selected");
for (var i = 0; i < queries.length; i++) {
console.log(queries[i].textContent);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div class="checkbox selected">Option 1</div>
<div class="checkbox selected">Option 2</div>
你得到一个错误与queries[i].text()
的原因是因为你调用一个jQuery方法上的DOM元素;queries
是一个jQuery集合,但queries[i]
是一个DOM元素。给定一个DOM元素,要访问jQuery方法,您需要对DOM元素进行jQuery包装:
$( queries[i] ).text()
但是,我会一直使用jQuery——jQuery .each()方法:
var queries = $(".checkbox.selected");
queries.each( function(i,query) {
console.log( $(query).text() );
});
或:
$(".checkbox.selected").each( function(i,query) {
console.log( $(query).text() ); //output: Option 1'nOption 2
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="checkbox selected">Option 1</div>
<div class="checkbox selected">Option 2</div>
相关文章:
- javascript来显示元素属性
- 自定义HTML元素属性未显示-Web组件
- 主元素属性?(或技术)
- 使用模板后,使用Angular获取元素属性值
- 如何从不同范围外的元素属性中获取求值表达式
- 可以't访问元素属性(如果已明确设置)
- 传递引用 jQuery 后无法访问元素属性
- 如何替换元素属性中的部分文本
- 添加新元素属性
- 如何使用jQuery访问父元素属性
- 使用jQuery.attr()方法获取元素属性
- 修改时,哪些DOM元素属性会导致浏览器执行回流操作
- Javascript数据将元素属性绑定到URL中的锚href
- 初始化可从元素属性值观察到的Knockout
- 获取内联样式中的元素属性
- 如何在 html 元素属性中使用 Angular 2 外推法
- 将元素属性与 javascript 折叠方法结合使用时,引导折叠无法正常工作
- 如何观察聚合物元素属性值从索引.html的变化
- 使用 JavaScript 修改 DOM 元素属性
- 聚合物节点到元素属性