我是jquery的新手。我有这样的链接..
<div>title 1<a href="/delete/1" class="del">Delete</a></div>
<div>title 2<a href="/delete/2" class="del">Delete</a></div>
jquery
$(".del").click(function () {
alert($(this).attr('href'));
event.preventDefault();
});
我正在尝试获取href属性。但它说Object对象。我想弄清楚我做错了什么。我如何解决这个问题。
我感谢任何帮助。
答案 0 :(得分:3)
也许试试这个:
alert($(this).prop('href'));
答案 1 :(得分:2)
使用
alert($(this).prop('href'));
答案 2 :(得分:1)
您的代码段中唯一错误的是您引用了一个未声明的event
变量。
这项工作对我来说:
$(".del").click(function (event) {
alert($(this).attr('href'));
event.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>title 1<a href="/delete/1" class="del">Delete</a></div>
<div>title 2<a href="/delete/2" class="del">Delete</a></div>
答案 3 :(得分:0)
查看评论和建议的答案我尝试使用单个HTML页面隔离您的问题,如下所示:
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script type="text/javascript">
$(function(){
$('.del').click(function (event) {
event.preventDefault();
alert($(this).attr('href'));
});
});
</script>
</head>
<body>
<div>title 1<a href="/delete/1" class="del">Delete</a></div>
<div>title 2<a href="/delete/2" class="del">Delete</a></div>
</body>
</html>
测试时,代码完全正常。我还比较了.prop()与.attr(),看看人们为什么建议这个答案。仔细注意这些2的文档,因为与另一个交换一个并不是解决这个问题的真正问题。问题作者需要提供更具体的测试用例,以便我们能够提供确定的答案。