按钮标签在IE7中不起作用(使用asp.net mvc)

时间:2011-02-08 20:03:34

标签: asp.net-mvc internet-explorer-7

我有这个ASP.net MVC项目需要一个类似界面的向导... 所以我在表单中使用了下一个后退按钮。

我正在控制控制器中的按钮名称以执行所需的操作。

但问题是按钮点击工作在IE8,chrome,ff但不在IE7中。

它似乎没有触发回发...我是否必须明确在Onclick上发布回发? 任何人都知道为什么按钮点击不在IE7中触发???

谢谢,我感谢任何答案..

这是我正在使用的伪代码......

<% using (Html.BeginForm("ListEntries","Home",FormMethod.Post, new { @Id = "MyForm" } )) {%>
                        <button name="button" value="next">Next</button>
                        <button name="button" value="back">Back</button>
  //blah....blh...blah...


<% } %>

[AcceptVerbs(HttpVerbs.Post)]
    public ActionResult ListEntries( string button)
    {
        if (button == "next")
            return RedirectToAction("doNextAction");
    else
    if (button == "back")
    return RedirectToAction("goBack");

}

2 个答案:

答案 0 :(得分:2)

如果没有'onclick'处理程序,IE中的按钮标签(至少是v.8)将无法运行。好吧,至少你不能简单地将按钮包装在锚标签中。

不起作用:

<a href="link.html">
    <button>Click Me!</button>
</a>

使用:

<a href="link.html" onclick="javascript:window.location=this.href">
    <button>Click Me!</button>
</a>

答案 1 :(得分:0)

此链接http://www.peterbe.com/plog/button-tag-in-IE让我相信在IE7中,按钮元素不会将单个字符串发布到您的控制器,因此与控制器方法的签名不匹配,您是否尝试过使用输入(如此处所示)类型的元素改为提交?

这不是我自己看到的东西,但似乎与你的问题相符