我的AJAX电话:
addClass: "noty-btn",
text: "OK",
onClick: function($noty) {
var applianceId = JSON.stringify(result);
$noty.close();
$.ajax(
{
url: JSON.parse(actionLinks.deletedata),
data: { 'date': datesToDelete, 'stationId': station, 'crewId': crew, 'endDate': enddate, 'checkedCoverStation': true, 'multipleSelected': multiSelect, 'applicationIds': applianceId, 'partialDelete': false},
type: "POST",
success: function() {
resetTable();
}
});
}
我的MVC控制器方法:
public JsonResult DeleteData(string date, int stationId, int crewId, string endDate, bool checkedCoverStation,
bool multipleSelected, string applianceIds, bool? partialDelete = false)
{
它将'applicanceId'传递给MVC控制器,它是一个字符串化的int数组。
我已经在chrome dev工具中检查了我的网络选项卡,但在请求中它不是null,但是,当MVC控制器收到它时,它是null。
它必须是int数组的字符串表示形式,因为它在程序的其他部分以这种方式使用。
为什么一旦到达控制器,applianceId总是为空?
答案 0 :(得分:0)
看起来像是代码中的拼写错误。
您提到的字段是' applicationIds'在你的JSON中,它被称为' applianceIds'在你的MVC控制器方法中。
修正错字,你应该好。