Кнопки не могут работать как ссылки без 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*/
Полагаю, было бы слишком грязно разбираться с JavaScript в HtmlHelpers.
EDIT2:
Якорный текст определяется внутри тегов. Я всегда путаю это. И кажется, что targetSource () тоже неверен . Попробуйте переписать его: event.targetSource () => event.target.