URl.Action 正在以适用于 IE8 的方式生成查询字符串,但在传递日期时不适用于 Chrome。
这是我们的代码。
function RunReport( PdfOrExcel)
{
var ChartType = "Pdf";
var argCounter = 0;
linkUrl = '@Url.Action("ClassAssignmentLoadSummaryReport", "ReportsScheduling", new { PdfOrExcel="[1]", RptDate="[2]" } )';
var objToSend = new Object();
value = $('#RptDate').val()
dataToSend.RptDate =value;
linkUrl = linkUrl.replace("%5B1%5D", PdfOrExcel);
linkUrl = linkUrl.replace("%5B2%5D", value );
w = window.open(linkurl);
w.focus();
}
(这有点难看,因为我们展开了几个函数来获取上面的代码)
它会生成一个这样的 url:
/appName/ReportsScheduling/ClassAssignmentLoadSummaryReport?PdfOrExcel=Pdf&RptDate=8/6/2012
如果我们像这样更改它,它在 Chrome 中就可以正常工作。
/appName/ReportsScheduling/ClassAssignmentLoadSummaryReport?PdfOrExcel=Pdf&RptDate=8/6/2012
我假设我们正在做一些愚蠢的事情,并且因此而以这种方式生成它,但我无法弄清楚我们做错了什么。
任何帮助是极大的赞赏。