当前脚本:
var IrregularChartParams = InitializeChartParams();
// parametreleri json stringe cevir...
var chartParams = JSON.stringify(IrregularChartParams);
$.ajax({
url: '/Widget/GridExportToExcel',
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: chartParams,
....
控制器
public void GridExportToExcel(IrregularChartParams chartParams)
{
我想要一些如下内容:
// I know this does not work...
var url = '/Widget/GridExportToExcel' + chartParams
window.open(url);
使用模型绑定将json数据添加到url的简单方法是什么?
答案 0 :(得分:1)
可能我无法解释,但我找到了一个解决方案,我不知道,它是最好的,但它有效
var IrregularChartParams = InitializeChartParams();
var url = '/Widget/GridExportToExcel?' + $.param(IrregularChartParams, true);
window.open(url);
答案 1 :(得分:1)
<强> 1 强>
如果InitializeChartParams()
函数返回一个名称 - 值对,则不需要任何操作,但将请求方法更改为GET
:
var IrregularChartParams = InitializeChartParams();
// parametreleri json stringe cevir...
// var chartParams = JSON.stringify(IrregularChartParams);
var chartParams = IrregularChartParams;
$.ajax({
url: '/Widget/GridExportToExcel',
type: 'GET',
contentType: 'application/json; charset=utf-8',
data: chartParams,
....
<强> 2 强>
如果InitializeChartParams()
未返回名称 - 值集合,则您可以按照$.param
中的IrregularChartParams
将其内容作为查询字符串附加到您的答案中。
第3:强>
如果需要,可以将var IrregularChartParams = InitializeChartParams();
var chartParams = JSON.stringify(IrregularChartParams);
$.ajax({
url: '/Widget/GridExportToExcel',
type: 'GET',
contentType: 'application/json; charset=utf-8',
data: {sp: chartParams},
and action method:
public void GridExportToExcel(string cp) {
var chartParams = JsonConvert.DeserializeObject<IrregularChartParams>(json);
...
}
作为单个查询字符串项传递给服务器,并在服务器上反序列化它:
{{1}}