首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何防止onclick方法中的默认事件处理?

如何防止onclick方法中的默认事件处理?
EN

Stack Overflow用户
提问于 2011-08-14 19:59:00
回答 10查看 201.1K关注 0票数 97

如何在onclick方法中防止默认?我有一个方法,在这个方法中我还传递了一个自定义值

代码语言:javascript
复制
<a href="#" onclick="callmymethod(24)">Call</a>
代码语言:javascript
复制
function callmymethod(myVal){
    //doing custom things with myVal
    //here I want to prevent default
}
EN

回答 10

Stack Overflow用户

发布于 2013-03-15 18:08:30

在我看来,答案是错误的!当您只返回false时,他要求使用event.preventDefault();;它还会调用event.preventDefault();event.stopPropagation();

你可以这样解决这个问题:

代码语言:javascript
复制
<a href="#" onclick="callmymethod(event, 24)">Call</a>
代码语言:javascript
复制
function callmymethod(e, myVal){
    //doing custom things with myVal

    //here I want to prevent default
    e = e || window.event;
    e.preventDefault();
}
票数 54
EN

Stack Overflow用户

发布于 2013-01-24 17:54:44

试试这个(但是如果你没有有效的graceful degradationhref值,请在这种情况下使用按钮)

代码语言:javascript
复制
<a href="#" onclick="callmymethod(24); return false;">Call</a>
票数 49
EN

Stack Overflow用户

发布于 2015-02-19 23:29:38

您可以捕获事件,然后使用preventDefault()阻止它--使用纯Javascript

代码语言:javascript
复制
document.getElementById("xyz").addEventListener('click', function(event){
    event.preventDefault();
    console.log(this.getAttribute("href"));
    /* Do some other things*/
});
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7056669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档