【发布时间】:2020-09-06 17:03:13
【问题描述】:
我使用带有 post 方法的 jQuery 提交表单。
<form action="/controller/ActionName" id="formDetail" method="post" onsubmit="" target="_top">
<input name="name" type="hidden" value="name123" />
</form>
/* jQuery code to submit form*/
$("#formDetail").submit();
控制器
public ViewResult ActionName(string name)
{
// rest of code
return View("viewName", model);
}
控制器动作正确返回视图。但是浏览器接收到 contentType 为 application/json 的响应,并且完整的 html 标记作为响应显示在屏幕上(实际上包裹在 <pre> 标记内)
如果将 jQuery 代码替换为下面的代码,它可以正常工作,响应的 contentType 为 text/html,并显示正确的 html 页面。
window.location.href = '/controller/action?name=name';
尝试设置Response.ContentType = "text/html",如关于 SO 的类似问题中所建议的那样,但没有运气。
【问题讨论】:
标签: javascript c# jquery asp.net-mvc forms