【发布时间】:2019-01-25 17:30:58
【问题描述】:
我需要将一些信息从视图传递给控制器。
目前,我正在执行以下操作:
var url = '@Url.Action((object)@ViewBag.CompID, "Print", "DataRecords")' + '?location=' + model.Location + '&startDate=' + model.StartDateTime + '&endDate=' + model.EndDateTime;
window.location.href = url;
我想隐藏位置、开始日期和结束日期,使其不显示在浏览器 url 中。
我正在考虑创建一个如下所示的模型并将模型发送到控制器,但不知道如何去做。
var model = {
Location: $('#Location :selected').val(),
StartDateTime: $("#StartDate").val(),
EndDateTime: $("#EndDate").val()
};
请注意,在我的例子中,我不需要检索任何数据,因为 Print 方法会进行打印。
除了使用
之外,我也愿意完成此任务 window.location.href
如何使用 AJAX 完成此操作,因为我不需要返回带有任何数据的视图,因为 Print 方法操作将打印适当的视图。
【问题讨论】:
-
你应该使用 AJAX。
-
您可能需要澄清一下-您是说您不需要
view来返回任何数据,但实际上您需要(因此客户端可以打印“某物”)-不管是 Ajax 还是标准 GET/POST(根据定义,它们都发送Request并接收一些Response) - 您当前的代码也是如此(发送带有查询字符串的GET并期待一些响应)。
标签: c# asp.net-mvc