通过设置src of element将模型发送到MVC3控制器
Send a model to MVC3 controller by setting src of element
我试图触发Excel文档的下载。我的控制器返回可下载文件:
public ActionResult ExportPatchSchedules([Bind(Prefix = "multiSelectDialog")] ExportPatchSchedulesModel model)
{
MemoryStream memoryStream = WorkflowManager.ExportPatchScheduleReport(model.TaskIDs);
return File(memoryStream.ToArray(), "application/vnd.ms-excel",
string.Format(@"Patch Schedule Report {0}.xls", string.Format("{0:yyyy-MM-dd_hh-mm-ss-tt}", DateTime.Now)));
}
为了触发下载,我有以下内容:
$('<iframe>', {
src: '../Workflow/ExportPatchSchedules/',
css: {
display: 'none'
}
}).appendTo('body');
然而,在此之前,我使用AJAX请求来访问我的控制器方法:
$.ajax({
type: "POST",
url: '../Workflow/ExportPatchSchedules',
data: formData
});
其中formData是exportpatchschedulemodel的序列化表示。
当我被限制设置src时,我正在努力将我的模型发送到ExportPatchSchedules。可以用这种方式把我的模型送过去吗?如果不是. .这通常是怎么做的?
尝试使用html form
与它的target
属性设置为iframe
的name
,如:
<iframe style="display: none;" id="myIframe" name="myIframe"></iframe>
var f = document.createElement("form");
f.method = "POST";
f.action = "../Workflow/ExportPatchSchedules";
f.target = "myIframe";
f.enctype = "application/x-www-form-urlencoded"; // not sure about this since you didn't mention
var input = document.createElement('input');
input.type = "hidden";
input.name = "model";
input.value = "...." // your data here, not sure about it since you didn't mention
f.appendChild(input);
f.submit();
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 从控制器返回后Ajax启动事件激发
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- 控制器中的 MVC3 自动完成和开机自检方法
- 如何从控制器创建进度条来处理MVC3中的长流程
- MVC3 AJAX将数据传递给控制器.它's已提交两次
- 在 MVC3 控制器操作中获取 JavaScript 推送对象数组
- 如何将一个简单的Javascript数组绑定到MVC3控制器操作方法
- 如何在mvc3控制器中获取json数组中的值
- MVC3在加载事件中将数据从jquery模态对话框传递给控制器
- ASP.NET MVC3-运行的每个选项卡中的控制器
- 使用MVC3和c#,从控制器调用部分视图
- 从javascript向MVC3控制器发布模型和附加参数
- MVC3控制器操作以编程方式返回一个失败的发布请求
- 如何将mvc3中的DateFormat设置为“;Jan/2012“;在控制器中,而不在Viewmodel中
- 通过设置src of element将模型发送到MVC3控制器
- .NET MVC3:避免在控制器仍在加载数据时关闭视图窗口
- 如何在asp.net mvc3中使用jquery函数将值从视图传递到控制器
- MVC3从Javascript调用控制器方法