0

我不知道下面代码背后的错误是什么,我只想返回主页,当单击“取消”按钮时,该主页显示应用程序详细信息页面中的事件列表。现在,当我从详细信息页面单击“取消”按钮时,URL 是 sampleurl:2988/Event/Index 而不是 sampleurl:2988/Event/330。对此的任何帮助都将受到高度赞赏。

主页网址:sampleurl:2988/Event/330

详情页面:sampleurl:2988/Event/EditEventDetails/3

这是路线设置。

routes.MapRoute(
                "Event", // Route name
                "Event/{id}", // URL with parameters
                new { controller = "Event", action = "Index", id = 0 } // Parameter defaults
            );

            routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Event", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

取消按钮用于返回主页面:

<input type="button" id="btnCancel" url="@Url.Action("Index", "Event", new { id = Model.EM_AID })" value="Cancel" class="button cancelbutton"/>

jQuery代码:

$("#btnCancel").click(function () {
    window().location.href =  $(this).attr('url');
});
4

1 回答 1

1

您需要将id=330第一页中出现的内容传递到您的详细信息页面,以便您可以正确生成返回 url。您也可以使用 ActionLink,无需使用 javascript:

@Html.ActionLink(
    "Cancel",                               // linkText
    "Index",                                // action
    "Event",                                // controller
    new { id = Model.IdFromTheFirstPage },  // routeValues
    new { @class = "cancelbutton" }         // htmlAttributes
)

所以这里的工作流程:

  1. 用户访问/Event/330并单击详细信息链接以编辑给定事件的详细信息
  2. 用户被重定向到/Event/EditEventDetails/3?IdFromTheFirstPage=330
  3. 用户单击取消按钮并返回到原始页面
于 2012-06-22T08:53:57.507 回答