需要正确的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选择器下降要比查找属性更快,该属性将抓取页面中的所有锚点。
答
应该只有一个“=”作为您正在使用的Attribute Equals Selector:
$("a[onclick='RemoveCCard_OnClick(event);']").bind('click', function() {
alert("");
return false;
});
答
不要使用这样的属性选择器。如果你需要一个事件处理程序附加到一个特定的元素,给它一个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
一如既往的尼克你是正确的目标。我尝试了类似的东西,它没有工作$(“span#span_remove_selected_ccards> a”)。也许我做错了什么。无论如何,你的选择者工作得很好,谢谢 – user357034 2010-09-04 11:10:12