按钮不能像没有 javascript 的链接一样起作用。
一般来说 - 这是一种不好的做法(搜索引擎无法正确索引您的页面等)。
我建议您使用锚标签并使它们看起来像一个按钮。
但如果你真的需要它——这篇文章提供了一个答案。
编辑:
对不起。我的回答有点太快了。
这不是您要问的(不涉及 HtmlHelper),但这就是我解决此问题的方法:
鉴于我会定义锚点(没有hrefs的锚点确实通过了W3验证):
<a id='removefromcart_<%=row.ID%>' title='Remove from cart'
class='remove-link' />
在外部 javascript 文件中:
var onclick = function(event){
event.preventDefault();
var link = $(event.targetSource());
//tag ids should be injected through view asp/cx
$('#Step2_RemoveRegistrationForm input[name=id]')
.val(link.attr('id').split('_')[1])
};
$('a[id^=removefromcart]').click(onclick);
在 CSS 中:
a {cursor:pointer;} /*anchors without href by default haven't pointer*/
我相信在 HtmlHelpers 中使用 javascript 会很麻烦。
编辑2:
锚文本在标签内定义。我总是混淆这一点。而且似乎 targetSource()也是错误的。尝试重写它:event.targetSource()=>event.target。