javascript - 如何正确选择一个 div 呢?

标签 javascript jquery this

我有一个产品列表,每个产品都显示在这样的 div 中:

<div data-productSheetId="n" class="productSheet"></div>

我当前的选择器如下:

var productSheet = $('[data-productSheetId="' + $(this).data('productSheetId') + '"]');

我很确定我做错了,我怎样才能正确选择它?

最佳答案

您可以使用.filter()方法:

var productSheet = $("div.productSheet").filter(function() {
    return $(this).data("productsheetid") == "n";
});

更新:

感谢@mplungjan。数据属性应全部小写。现在,当属性具有连字符时,可以使用驼峰式大小写等效项来读取数据:

//<div data-productsheetid="n" class="productSheet"></div>
//use:
.data('productsheetid')

//<div data-product-sheet-id="n" class="productSheet"></div>
//use either:
.data('product-sheet-id')
//or:
.data('productSheetId')

关于javascript - 如何正确选择一个 div 呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35534596/

相关文章:

javascript - 当我切换标签时如何修复进度重置

javascript - 单击按钮时将其从行中删除

javascript - 动态更新文本框后更新范围值

c# - 'this' 在 C# 构造函数中意味着什么?

javascript - 为什么我不能从 chrome.downloads.onChanged 中调用函数?

javascript - 单击父级时仅 slideToggle

javascript - 选择颜色为 :lightGreen in CSS using jQuery 的元素

javascript - 如何检索 css3 旋转中的 Angular ?

javascript - 使用 javascript 将 css 添加到页面的最佳方法?

javascript:在链中,如何获取前一个数组的大小?