0

我是 asp.net mvc 的初学者。我在视图中Home.cshtml

<button name ="del"  style="width:150px; height:30px;text-decoration:none;color:white;text-align:center;background-color:darkcyan;padding:5px;border-style:outset;border-width:2px;border-color:darkcyan"  onclick="@Url.Action("Delete", "Super",1)">Supprimer</button>
<button name ="edit"style="width:150px; height:30px;text-decoration:none;color:white;text-align:center;background-color:darkcyan;padding:5px;border-style:outset;border-width:2px;border-color:darkcyan" onclick="@Url.Action("Edit", "Super","val")">Editer</button>

当我单击这两个按钮时,什么都没有消失,并且重定向不起作用。

  1. 为什么?
  2. 我怎样才能改变它是正确的?
4

4 回答 4

4

您不想在MVC. 尝试使用ActionLink

@Html.ActionLink("Delete", "Edit", "Super");

@Html.ActionLink("Edit", "Edit", "Super");

http://msdn.microsoft.com/en-us/library/system.web.mvc.html.linkextensions.actionlink(v=vs.108).aspx

对于一个按钮:

<input type="button" value="Supprimer" onclick="window.location.href='@Url.Action("Delete", "Super")';" />

要指定参数:

<input type="button" value="Supprimer" onclick="window.location.href='@Url.Action("Delete", "Super", new { Id = 1 })';" />
于 2013-05-17T10:38:21.010 回答
1

在这种情况下,您可以使用 JQuery 来提高当前代码的质量,如下所示

<input id="supprimer" type="button" value="Supprimer" />

$('#supprimer').click(function(){
   window.location.href = '@Url.Action("Delete", "Super")';
});

在最好的版本中,尝试使用AMD 模式对代码进行模块化

于 2013-05-17T11:27:36.543 回答
0

问题是这onclick是一个javascript事件,因此需要javascript代码。您只是将它设置为一个 URL,它不会做任何事情。

一种选择(我并不是说它是最好的)是将其更改为:

onclick="window.location = '@Url.Action("Delete", "Super", new { id = 1 })';"
于 2013-05-17T10:33:30.047 回答
0

我找到了这个解决方案:

 <a type="button"   style="width:150px; height:30px;text-decoration:none;color:white;text-align:center;background-color:darkcyan;padding:5px;border-style:outset;border-width:2px;border-color:darkcyan;margin-left:25px"  href="@Url.Action("Delete", "Super",new { Id = 1 })">Supprimer</a>
    <a type="button" style="width:150px; height:30px;text-decoration:none;color:white;text-align:center;background-color:darkcyan;padding:5px;border-style:outset;border-width:2px;border-color:darkcyan" href="@Url.Action("Edit", "Super",new { Id = 1 })">Editer</a>

在控制器中:

 public ActionResult Edit(int id)
        {

            int id2 = id;


           return RedirectToAction("Edit", "Admin", new {id = id2});
        }
于 2013-05-17T13:46:17.507 回答