我有很多以类似这样的链接开头的Backbone.js操作

<a href="#makeCookies">Make Cookies</a>

和一个Backbone.View事件哈希像
'click [href=#makeCookies]': 'makeCookies'

和一个事件处理函数
makeCookies: function (event) {
    event.preventDefault();
    //code to make cookies
    //I have no intention of ever using #makeCookies in the URL,
    //it's just there so I can wire up the event handler properly
}

有没有一种干净的方法来避免样板event.preventDefault()。我考虑过只使用<button>标记而不是<a>标记,但这似乎不合适。

最佳答案

如果计划无论如何都要放弃href属性,为什么还需要拥有href属性呢?只使用一个类名怎么样?

HTML代码:

<a class="makeCookies">Make Cookies</a>

查看代码:
'click .makeCookies': 'makeCookies'
...
makeCookies: function (event) {
    // No need for event.preventDefault() anymore!
}

09-11 19:55