嘿,我正在使用这个小jquery:
$("area.imagefield[data-name='" + searchText + "']").each(function() {
检查属性“data-name”的值是否与变量“searchText”完全匹配。
但是我需要检查属性“data-name”的值是否是变量“searchText”的索引,所以使用
.indexOf
我尝试了什么:
$("area.imagefield[data-name=]").each(function() {
if ($(this).attr("data-name").indexOf(searchText) != -1) {
console.log("match");
} else {
console.log("no match");
}
但是控制台中没有日志...:/任何想法?
答案 0 :(得分:1)
实际上你的代码看起来不错,除了一个错字
在data-name
之后删除等号,否则它是无效的css选择器:
因此area.imagefield[data-name=]
应为area.imagefield[data-name]
答案 1 :(得分:0)
尝试这种方式:
$("#imagefieldID").each(function() {
if ($(this).attr("data-name").indexOf(searchText) != -1) {
console.log("match");
} else {
console.log("no match");
});
答案 2 :(得分:0)
jQuery数据()
在jQuery中使用data
属性的正常方法是什么,也可能是你想要使用的。
$('area.imagefield').each(function (i) {
if ($(this).data('name')===searchText) {
console.log('match '+i);
} else { console.log('no match '+i); }
});