我有一个产品列表,每个产品都显示在这样的 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/