jQuery this.href字符串比较不起作用

时间:2012-07-02 18:13:24

标签: javascript jquery this href

我有一个简单的jQuery脚本,我正在尝试构建,但我不能让href字符串比较返回true:

<a class="test" href="/Services/Cloud-Hosting">Click Me</a>​

我的脚本如下:

$('.test').click(function() {
if ($(this).href == "/Services/Cloud-Hosting") {
    alert('hi');
}
else {
    alert('no');
}
});​

即使href是相同的,我仍然会收到'不'的警报。我错过了什么?

4 个答案:

答案 0 :(得分:9)

变化:

if ($(this).href

要:

if (this.href

$(this).attr('href')但前者更好。

要阅读属性,您需要使用attrattribute的简写)

这就是你应该拥有的:

if (this.href == "/Services/Cloud-Hosting") {
    alert('hi');
}
else {
    alert('no');
}

答案 1 :(得分:3)

试试这个:

if ($(this).attr('href') == "/Services/Cloud-Hosting") {

答案 2 :(得分:1)

请参阅.attr()并试一试:

$(this).attr('href') == "/Services/Cloud-Hosting"

代替

答案 3 :(得分:1)

jQuery对象没有href属性。只需使用this.href访问HTMLAnchorElement的属性,而不是使用$(this)创建新的jQuery对象。