一尘不染

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

javascript

如何防止onclick方法中的默认设置?我有一个传递自定义值的方法

<a href="#" onclick="callmymethod(24)">Call</a>



function callmymethod(myVal){
    //doing custom things with myVal
    //here I want to prevent default
}

阅读 425

收藏
2020-05-01

共1个答案

一尘不染

让您的回调返回false并将其传递给onclick处理程序:

<a href="#" onclick="return callmymethod(24)">Call</a>

function callmymethod(myVal){
    //doing custom things with myVal
    //here I want to prevent default
    return false;
}

但是,要创建可 维护的 代码,您应该避免使用_“内联Javascript”_(即直接位于元素标签内的代码),并通过包含的Javascript源文件(称为unobtrusiveJavascript)修改元素的行为。

标记:

<a href="#" id="myAnchor">Call</a>

代码(单独的文件):

// Code example using Prototype JS API
$('myAnchor').observe('click', function(event) {
    Event.stop(event); // suppress default click behavior, cancel the event
    /* your onclick code goes here */
});
2020-05-01