我的问题是没有办法让preventDefault()工作。 这是我的代码:
HTML:
<a class="list-ui-controlcol-link list-ui-controlcol-link-delete" href="http://localhost/lmvc_trunk/pages/delete/17">Törlés</a>
JQUERY:
$(".list-ui-controlcol-link-delete").click(function(event){
event.preventDefault();
});
即使我从jQuery自己的网站(http://api.jquery.com/event.preventdefault/)复制粘贴原始示例,它也无法正常工作。 你能解释一下为什么会发生这种情况以及如何使preventDefault正常工作吗?
答案 0 :(得分:1)
您需要确保在加载DOM后执行脚本:
$(document).ready(function() {
$(".list-ui-controlcol-link-delete").click(function(event){
event.preventDefault();
});
});
有关详情,请参阅此页:http://api.jquery.com/ready/
答案 1 :(得分:0)
你在哪里加入你的剧本?如果在脚本加载时将脚本包含在HEAD中,则DOM中不存在a.list-ui-controlcol-link-delete。
尝试这样做:
<html>
<head>
<title>test</title>
</head>
<body>
<a href="/test" class="list-ui-controlcol-link-delete">Torles</a>
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script src="app.js"></script>
</body>
</html>
app.js包含:
$('.list-ui-controlcol-link-delete').click(function(e) { e.preventDefault(); });
虽然我建议使用.on()函数,因为它会在新生成的DOM元素上动态绑定事件:
$(document).on('click','.list-ui-controlcol-link-delete',function(e) { e.preventDefault(); });