2009-08-04 44 views
2

我正在写一个ASP.NET MVC应用程序,其中,由于各种原因,通过HTML输入按钮处理导航。如何处理这种情况的最佳做法是什么?在ASP.NET MVC中使用按钮处理页面操纵的正确方法?

  1. 设置上的按钮形式,其中的信息需要发布,只是用JavaScript来在哪里的信息并不需要保留

  2. 是否所有按钮通过表单处理的按钮重定向,到迷你的形式处理该信息所在不需要的按钮导航要保留

    <% using (Html.BeginForm()) 
        { %> 
    <input type="hidden" name="controller" value="1" /> 
    <input type="hidden" name="action" value="Location" /> 
    <input id="BackButton" type="submit" value="Go Back" /> 
    <% } %> 
    
  3. 东西我都没有想到这里

  4. 0点

回答

2
  1. Javascript可能是你最好的选择。

使用迷你表格看起来确实很沉重。你基本上是想用一个按钮作为链接(我会认真考虑你为什么打破了这个非常基本的网页约定:按钮发布/修改和链接导航),所以更基本的你可以使它更好。

+0

我同意“突破网络约定”位,但是......如果没有javascript,会发生什么?这些日子完全取决于网站和目标受众,但这仍然是一个问题。剥夺用户一些额外的浮华物品是一回事,但剥夺用户的导航能力完全不同。 – 2009-08-05 08:00:16

1

3:样式一些锚标签看起来像按钮。

在我们实施选项1.客户喜欢有“取消”在所有形式的按钮(...)最近的应用程序,所以我们只是停留在其上做了复位输入的单击事件:

history.go(-1); return false; 
+0

是,即使可能吗?通常,按钮呈现为与操作系统上的本地按钮相似... – 2009-08-04 19:41:21

+0

如果您保留默认按钮样式,则可能会出现问题,但我倾向于执行一些自定义样式。 – Joel 2009-08-04 19:42:59

3

Here你可以找到关于如何风格锚标签就像一个按钮

+1

良好的联系。也很好地解释了为什么要避免默认的按钮样式。 – Joel 2009-08-04 19:51:58

0

使用空<a href="#">标记和Javascript/jQuery的一个相当不错的文章。例如:

在View:

<script src="<%= Url.Content("~/Content/navigation.js") %>" type="text/javascript"></script> 
... 
<a id="back" href="#">Back</a> 
<a id="next" href="#">Next</a> 

<script type='text/javascript'> 
    var back_href="<%= Url.Action("...") %>"; 
    var next_href="<%= Url.Action("...") %>"; 
</script> 
在navigation.js

某处:

$(document).ready(function() { 
    $('a#back').attr('href', back_href); 
    $('a#next').attr('href', next_href); 
}); 
相关问题