转换Jquery函数

时间:2014-01-27 20:48:08

标签: javascript jquery function transform indexof

嘿,我正在使用这个小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");
    }

但是控制台中没有日志...:/任何想法?

3 个答案:

答案 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); }
});

做了一个小提琴:http://jsfiddle.net/filever10/mau93/