需要正确的jQuery选择

需要正确的jQuery选择

问题描述:

我想的功能结合到这种定位的,但似乎无法得到选择权需要正确的jQuery选择

这不起作用

$(function(){ 
$("a[onclick=='RemoveCCard_OnClick(event);']").bind('click', function() { 
alert(""); 
return false; 
}); 
}); 



<span style="display: block;" id="span_remove_selected_ccards"> 
<a style="color: rgb(153, 153, 153);" onclick="RemoveCCard_OnClick(event);" href="javascript: void(0);"> 
<span class="PageText_L31n">remove selected</span></a> 
<input type="hidden" value="1968" name="remove_ccardid" id="remove_ccardid"> 
</span> 

我会在这里提出一个更简单的选择不是在看一个onclick属性,像这样:

$("#span_remove_selected_ccards > a").click(function() { 
    return false; 
}); 

它使用一个#ID selector在父元素上,然后获取> (immediate child)<a>将事件绑定到。当传递函数时,.click()只是.bind('click')的快捷方式。另外,从ID选择器下降要比查找属性更快,该属性将抓取页面中的所有锚点。

+0

一如既往的尼克你是正确的目标。我尝试了类似的东西,它没有工作$(“span#span_remove_selected_ccards> a”)。也许我做错了什么。无论如何,你的选择者工作得很好,谢谢 – user357034 2010-09-04 11:10:12

应该只有一个“=”作为您正在使用的Attribute Equals Selector

$("a[onclick='RemoveCCard_OnClick(event);']").bind('click', function() { 
    alert(""); 
    return false; 
});​ 

演示:http://jsfiddle.net/ucHuY/

不要使用这样的属性选择器。如果你需要一个事件处理程序附加到一个特定的元素,给它一个class,或者如果它是独一无二的,一个id,就像这样:

<a id="unique" href="#">Look ma, I'm special!</a> 
<a class="many" href="#">You can have lots and lots of me with the same class here</a> 

然后使用下面的选择,选择他们

$('#unique') 
$('.many') 
+0

这根本没有回答我的问题。我无法访问该标记,或者我会在主播中添加一个ID。 – user357034 2010-09-04 10:51:45