c# - Asp.net MVC Ajax 在 GET HTML 上调用空参数
问题描述
所以我尝试将一个整数数组传递给我的控制器。
在我的 ajax 调用中,如果我使用 type: 'GET', dataType: 'HTML',我的整数数组不会传递给控制器。如果我使用 type: 'POST', dataType: 'JSON' ,则相同的 ajax 调用有效,但是我需要返回部分视图。
请问有什么想法吗?
这是我的代码:
控制器 :
public ActionResult GetLaySimulation(int[] projectIDs)
{
var layList = LayHelper.GetLayObjects(projectIDs); //projectIDs = null if I have GET HTML in my ajax call.
return PartialView("_LaySimulation", layList);
}
工作ajax调用:
$.ajax({
url: '@Url.Action("GetLaySimulation", "Admin")',
type: 'POST',
data: { projectIDs: simulationIDs },
dataType: 'JSON',
success: function (result) {
hideLoader();
$("#lay-container").html(result);
},
error: function (err) {
hideLoader();
}
});
我需要的 :
$.ajax({
url: '@Url.Action("GetLaySimulation", "Admin")',
type: 'GET',
data: { projectIDs: simulationIDs },
dataType: 'HTML',
success: function (result) {
hideLoader();
$("#lay-container").html(result);
},
error: function (err) {
hideLoader();
}
});
********************编辑*********************
Javascript函数:
$("#lay-container").html("");
var simulationIDs = [];
var checkBoxes = $(".chk-export");
var showButton = false;
for (var i = 0; i < checkBoxes.length; i++) {
if ($(checkBoxes[i]).is(":checked") == true) {
simulationIDs.push($(checkBoxes[i]).attr("data-id"));
}
}
if (simulationIDs.length > 0) {
$(".btn-excel").fadeIn();
$("#lay-container").fadeIn();
showLoader();
$.ajax({
url: '@Url.Action("GetLaySimulation", "Admin")',
type: 'GET',
data: { projectIDs: simulationIDs },
dataType: 'HTML',
success: function (result) {
hideLoader();
$("#lay-container").html(result);
},
error: function (err) {
hideLoader();
}
});
}
解决方案
你可以使用 type as POST 和 dataType as html 不要混淆 ☺</p>
推荐阅读
- ios - 在我的应用播放音频期间,在 iOS 上静音其他应用的音频
- azure-api-management - APIM 路由到非镜像端点
- c# - 文本文件读取不返回重音字符
- bash - 如何在bash中一个接一个地运行多个sql语句?
- git - 如何自动创建 git 帐户和存储库
- javascript - 为什么 Fetch API fetch() 总是抛出异常?
- firebase - Firebase Documentsnapshot 映射到 Flutter 中的 Json 对象
- jenkins - 使用插件管理器的 REST API 和 JQ 生成全面的 Jenkins 插件清单
- javascript - 将文件上传到 Firebase Storage (Web) 后如何执行功能?
- javascript - 在切换功能中 data() 或 attr('data-menu') 不起作用