我有很多这样的链接,具有不同的rel属性
<a href="#" class="buy" rel="WVSEU1Y">buy</a>
我想在点击时获取rel属性的值...但是这段代码似乎不起作用 firebug也不会在控制台中触发任何错误。我做错了什么?
$("a.buy").click(function(event) {
event.preventDefault();
var msg = $(this).attr('rel');
alert(msg);
});
更新:我更正了我的html错误。它没有防止违约。点击事件似乎无效。
添加所有其他脚本的代码顶部。
答案 0 :(得分:1)
此处http://jsfiddle.net/niklasvh/NFfe5/工作正常,但请注意您的HTML中有错误,错过href=#"
附近的引号
确保您的代码也包含在DOM中:
$(function(){
// your code
});
答案 1 :(得分:0)
this
绑定到全局对象。我相信event.target
将是您想要的DOM对象。
$("a.buy").click(function(event) {
event.preventDefault();
//here, this refers to the global object, not the a element
//unless jquery is doing some magic to bind it
//event.target at this point in execution should be the a element
var msg = $(this).attr('rel');
alert(msg);
});
答案 2 :(得分:0)
试试这个
$(document).ready(function(){
$("a.buy").live('click',function(event) {
event.preventDefault();
var msg = $(this).attr('rel');
alert(msg);
});
});
答案 3 :(得分:0)
我已经测试过,写的没问题。代码如下:
<a href="#" class="buy" rel="WVSEU1Y">buy</a>
<script type="text/javascript">
$(function () {
$(".buy").bind("click", function () {
alert($(this).attr("rel"));
});
})
</script>