找到具有特定值的href

时间:2010-11-14 05:05:50

标签: javascript jquery find

我有一个名为“selectMe”的数组,由一个变量形成,包含一个字符串,如:12P,5B,10C等,这是一个超链接的“href”值,我需要查找并添加该类“选择”到此数组中的那些。为了打破阵列,我有:

function selectPrevious(selections){
    // split into array
    var selectMe = selections.split(", ")
    for (var i = 0; i < selectMe.length; i++){
        $('#theater a').search(selectMe[i]).addClass('selected');
    }
}

我尝试过find()代替search()以及许多其他迭代,但仍然无法实现我想要的,我该怎么做?

修改

使用此处提供的答案之一,我已将其更改为:

function selectPrevious(selections){
            // split into array
            if(typeof selections !== "undefined"){
                    var selectMe = selections.split(", ");
                for (var i = 0; i < selectMe.length; i++){
                    $('#theater a[href*='+selectMe[i]+']').addClass('selected');
                }
            }
        }

我不得不添加“if(typeof selections!==”undefined“)”,因为否则它会让我误入IE。无论如何,我仍然无法将类“选中”添加到数组中的值,我错过了什么?或者我做错了什么?

2 个答案:

答案 0 :(得分:1)

您的find()选择器错误。 jQuery中没有search()。 而不是$('#theater a').search(selectMe[i])使用$('#theater a[href*='+selectMe[i]+']')

答案 1 :(得分:0)

试试这个:

function selectPrevious(selections) {
    // split into array
    var selectMe = selections.split(", ")
    for (var i = 0; i < selectMe.length; i++){
        $('#theater').find('a[href*='+selectMe[i]+']').addClass('selected');
    }
}