13

当 onclick 甚至从 haml 中的 link_to 标记触发时,我想调用一个 javascript 函数(没有 JQuery)。我怎样才能做到这一点?

4

4 回答 4

21

以下是在 haml 中使用 Rails link_to 的方法:

= link_to "my link", "", :onclick => "my_function(); return false"
于 2012-10-28T13:51:44.533 回答
13

我认为这可以工作:

link_to "your link", href, :onclick => "jsFunction"

或者,在 JS 方面做所有事情:

document.body.addEventListener('click',function(e)
{
    var target = e.target || e.srcElement;
    if (target.tagName.toLowerCase() !== 'a')
    {
        return e;//not clicked on link
    }
    //a link was clicked, maybe check class or id or other stuff to narrow it down
    //if a link you were interested in was clicked:
    return theClickFunction.apply(target,[e]);
},false);
于 2012-10-28T13:52:21.360 回答
9

纯 HAML 等同于 @edouardbriere 的答案:

%a{href: '#', onclick: 'my_function(); return false;'} my link
于 2014-08-13T21:58:55.580 回答
-2
<a onclick="YOURMETHOD;"/>A link</a>

如果您还想防止位置更改return false,请在方法调用后添加。

于 2012-10-28T13:44:25.717 回答