jquery - 提交表单警报保存对话框

标签 jquery forms asp.net-mvc-3 submit

我有一个 MVC 3 解决方案。为了提交表单,我们使用 jQuery.Form 库。在我的机器上,Firefox 一切正常,但在 IE 中,提交表单后我看到了保存文件对话框。我究竟做错了什么?我可以提供哪些详细信息来提供有关该问题的更多信息?

最佳答案

如果您的表单包含用于上传文件的文件输入,并且您的服务器返回 JSON,请确保 JSON 响应包含在 <textarea> 中。标签为 explained in the documentation .

例如,您可以编写一个自定义操作结果来完成这项工作:

public class JsonResultWithTextArea : JsonResult
{
    public override void ExecuteResult(ControllerContext context)
    {
        var response = context.HttpContext.Response;
        response.Write("<textarea>");
        base.ExecuteResult(context);
        response.Write("</textarea>");
        response.ContentType = "text/html";
    }
}

然后:

[HttpPost]
public ActionResult Update(MyViewModel model)
{
    ...
    return new JsonResultWithTextArea
    {
        Data = new { foo = "bar" },
    };
}

关于jquery - 提交表单警报保存对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8286724/

相关文章:

asp.net - onbeforeunload 事件需要 Jquery 帮助

Django:使用原始查询来限制 ModelForm 中的外键选择字段

php - Symfony2 形式 + 学说 - 选择的选择

asp.net-mvc-3 - MVC 3 : AutoMapper and Project/Solution Structure

asp.net-mvc-3 - Webforms 应用程序路由内的 MVC3 应用程序在 IIS7.5 中引发 HttpContext.SetSessionStateBehavior 错误

javascript - 按名称快速检查 Div 元素

javascript - AJAX 响应中的尾随换行符

jquery - 通过 url 选择选项值?

python - 在表单中将初始化的外键字段设置为只读

c# - 如何在 ASP.NET MVC3 中创建下拉列表?