使用带有href的jQuery

时间:2013-02-26 11:15:59

标签: javascript jquery

我有一个简单的(?)问题,我有一个类似的功能。

value = $("input[@name=typeGroup]:checked").val();
if (value == "value1") {
self.doSomething1();
}
else if (value == "value2") {
self.doSomething2();
}

使用

<div><input type='radio' name='typeGroup' value='value1' data-bind='checked: searchType' />Radio1</div>

<div><input type='radio' name='typeGroup' value='value2' data-bind='checked: searchType' />Radio2</div>

问题是,我希望函数上的类似选项为$("input[@name=typeGroup]:checked),但对于<a href>看起来像

<a href='#' data-bind='click: clickActivateFunction' id='draw_pic'>

有可能吗?这看起来怎么样?

5 个答案:

答案 0 :(得分:2)

Jquery属性选择器如下:

$("a[href=xxxx]");

更新了ans以发表评论: 使用这个

$("a:contains('My Text')")

用作功能

function onclickofa(e) {
    value = $(e.target).text();
    if (value == "value1") {
         self.doSomething1();
    }
    else if (value == "value2") {
        self.doSomething2();
    }
}

<a href="#" onclick="onclickofa()">value1</a>
<a href="#" onclick="onclickofa()">value2</a>

答案 1 :(得分:1)

如果您需要获取锚元素,可以使用:

$('#draw_pic')

因为你在该元素上有唯一的ID。

<强>更新

如果你想要不同的东西,我会绑定不同的事件,而不是使用if语句。

$('#draw_pic').click( function () {
    alert('Draw pic clicked');
});

$('#draw_more').click( function () {
    alert('Draw more clicked');
});

如果只是一个微妙的区别,你可以使用if语句......

$('a').click( function () {
    if (this.id === 'draw_pic') {
        alert('Draw pic clicked');
    }
});

答案 2 :(得分:1)

链接可以在以下状态中找到:

a:link
a:visited
a:hover
a:active

也许这就是你需要的:

$("a[href=xxxx]:visited");

如果您需要使用bind

绑定功能

答案 3 :(得分:1)

$("a").each(function(){
    var $a = $(this);
    var href = $a.attr("href");
    switch(href)
    {  case '#':
           alert("#!");
       break;
       case "/":
           // special click for home
           $a.click(function(e){
               alert("hello home");
               e.preventDefault();
           });

           // patch href in this case
           $a.attr("href","/index");
       break;
       default:
           alert("href:"+href);
       break;
    }
});

答案 4 :(得分:1)

$('a').click(function(e){
   if(this.id === "drawpic"){
      // do something1
     }
   else{
      // do something2
   }
});