0

所以不是我第一次遇到这个问题。我有一个简单的数组“异常”。为简单起见,我将其缩减为包含一个值,直到我解决问题为止。Onclicking 'img' 获取图像旁边的 'text',或 span 标签容器的文本。例如:

<span> text + <img class=exit src=images/cross-icon.png alt=some_text> </span>

然后将文本或“var t”与我的数组异常中的唯一元素“异常 [0]”进行比较

$('#categories').on('click','img',function() {
var q = $(this).parent();
var t = q.text();
loop( t );
});

function loop(param) {
// alert( param + ' ' + exceptions[0] ); //alerts the exact same value
// alert( jQuery.type(param) +' '+ $.type(exceptions[0]) ); //alerts string
//above shows that there the same type and value.
    for (var i=0;i<exceptions.length;i++) { 
        if (exceptions[i] == param) {
            alert('works!');
        }
    }
}

它没有提醒“工作!”。有任何想法吗。提前致谢。

4

1 回答 1

1

新编辑:只需替换var t = q.text();var t = $.trim(q.text());@adeneo 建议的:

$('#categories').on('click','img',function() {
var q = $(this).parent();
var t = $.trim( q.text() );
loop( t );
});

function loop(param) {
// alert( param + ' ' + exceptions[0] ); //alerts the exact same value
// alert( jQuery.type(param) +' '+ $.type(exceptions[0]) ); //alerts string
//above shows that there the same type and value.
    for (var i=0;i<exceptions.length;i++) { 
        if (exceptions[i] == param) {
            alert('works!');
        }
    }
}

@adeneo 的正确答案,但这是调试此类错误的一步:http: //jsfiddle.net/AstDerek/X2Cej/


非常讨厌第一个答案:

您的逻辑似乎错误,q是图像,t = q.text()是空的

于 2013-06-24T21:48:51.330 回答