我使用数据表并在ajax请求中进行初始化我使用data- attribute设置url
...
"ajax": {
"url": $('#mypage').data('source'),
"type": "GET",
}...
页面中嵌入的url看起来像这样
<divid="mypage" data-source=@Url.Action("CalculateSomething")>
...
</dv>
在服务器端,我期待参数someId
public JsonResult CalculateSomething(int someId)
{
}
我的问题是:
如何使用datatable url属性将参数传递给服务器 在ajax电话上面?
更新 参数将作为javascript中的下拉元素的值,如
var someId = $('#mydropdown').val();
答案 0 :(得分:1)
检查$.ajax
上的记录。对于参数,您可以使用data
属性。像这样:
url: function(e) { return $('#mypage').data('source'); },
type: "GET",
data:
{
someId: function(e) { return $('#mydropdown').val(); }, //here is your param
},
dataType: "json", //it's better to declare datatype, becouse you using JsonResult in your controller response.
答案 1 :(得分:1)
有两种方法,一种是你可以在网址中连接如下:
"ajax": {
"url": $('#mypage').data('source')+"someId="+id,
"type": "GET",
}
另一种方法是使用ajax的数据属性:
"ajax": {
"url": $('#mypage').data('source')+"someId=123",
"type": "GET",
"data": function (data) {
data.someId= 123;
}
}