Asp.net 如何在不重定向的情况下发布?
我想用这样的东西:Asp.net 如何在不重定向的情况下发布?,asp.net,asp.net-mvc,post,Asp.net,Asp.net Mvc,Post,我想用这样的东西: @using(Html.BeginForm("UploadFile", "Home", FormMethod.Post, new { enctype = "multipart/form-data" })) { <label for="file">Filename:</label> <input type="file" name="file" id="file" /> <
@using(Html.BeginForm("UploadFile", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<input type="submit" value="Upload File" />
}
@使用(Html.BeginForm(“UploadFile”,“Home”,FormMethod.Post,new{enctype=“multipart/formdata”}))
{
文件名:
}
但这是单页应用程序的多个步骤之一。我不希望它将用户重定向到与UploadFile操作关联的另一个视图。。。我只想让它提交数据并保持不变。如何防止它重定向?您需要创建一个REST端点,并使用AJAX发布数据您可以使用AJAX.BeginForm而不是Html。ajax助手有很多相同的特性,但它通过ajax调用完成所有工作。为此,您需要包含一些不引人注目的java脚本文件 编辑 这是一个样本 下面是代码示例-
@using (Ajax.BeginForm( actionName: "Edit",
controllerName: "Home",
routeValues: null,
ajaxOptions: new AjaxOptions() { HttpMethod = "POST", OnSuccess = "RecordUpdated", OnFailure = "AjaxFailed" },
htmlAttributes: new { id = "editForm" }))
{
<!-- Form Body -->
}
@使用(Ajax.BeginForm)(actionName:“编辑”,
控制器名称:“家”,
RouteValue:null,
ajaxOptions:new ajaxOptions(){HttpMethod=“POST”,OnSuccess=“RecordUpdated”,OnFailure=“AjaxFailed”},
HtmlatAttributes:new{id=“editForm”})
{
}
您还必须在页面底部包含,这样表单将通过javascript连接起来。请注意,该标记用于询问有关模式的问题。询问有关特定于ASP.NET的实现的问题时,请使用标记。@tisont。幸好你能帮我修好,因为我真的不在乎;)我想你没有一个有效的例子吧?我似乎无法使它与Ajax.BeginForm一起工作。