Javascript ajax将2d数组发送到操作方法错误-asp.net mvc
我想将2d数组从javascript文件发送到action方法。 我的javascript函数Javascript ajax将2d数组发送到操作方法错误-asp.net mvc,javascript,asp.net,ajax,asp.net-mvc,multidimensional-array,Javascript,Asp.net,Ajax,Asp.net Mvc,Multidimensional Array,我想将2d数组从javascript文件发送到action方法。 我的javascript函数 function _tbdata() { var dataarr = []; for(var i = 0; i<svarr.length; i++) { var trangthai = $("input[name='" + svarr[i] + "']:checked").val(); var lydo = $("#" + svarr[i]).val(); dataa
function _tbdata() {
var dataarr = [];
for(var i = 0; i<svarr.length; i++)
{
var trangthai = $("input[name='" + svarr[i] + "']:checked").val();
var lydo = $("#" + svarr[i]).val();
dataarr[i] = new Array(2);
dataarr[i][0] = trangthai;
dataarr[i][1] = lydo;
}
$.ajax({
url: '/DiemDanh/testMethod',
data: { info: JSON.stringify(dataarr ) },
type: "POST",
traditional:true,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert('running');
},
error: function (data, textStatus) { alert(textStatus); }
});
}
函数{
var dataarr=[];
对于(var i=0;i我认为您应该更改javascript。二维数组应为[[]]
我已经为您的代码编写了一个示例。它运行良好
function Test() {
var dataarr = [[]];
for (var i = 0; i < 1; i++) {
dataarr[i][0] = "A" + i.toString();
dataarr[i][1] = "B" + i.toString();
}
var model = JSON.stringify(dataarr);
$.ajax({
url: '/Home/testMethod',
data: model,
type: "POST",
traditional: true,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert('running');
},
error: function (data, textStatus) { alert(textStatus); }
});
}
功能测试(){
var dataarr=[[]];
对于(变量i=0;i<1;i++){
dataarr[i][0]=“A”+i.toString();
dataarr[i][1]=“B”+i.toString();
}
var model=JSON.stringify(dataarr);
$.ajax({
url:“/Home/testMethod”,
数据:模型,
类型:“POST”,
传统的:是的,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(结果){
警报(“运行”);
},
错误:函数(数据,文本状态){警报(文本状态);}
});
}
我认为您应该更改javascript。二维数组应该是[[]]
我已经为您的代码编写了一个示例。它运行良好
function Test() {
var dataarr = [[]];
for (var i = 0; i < 1; i++) {
dataarr[i][0] = "A" + i.toString();
dataarr[i][1] = "B" + i.toString();
}
var model = JSON.stringify(dataarr);
$.ajax({
url: '/Home/testMethod',
data: model,
type: "POST",
traditional: true,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert('running');
},
error: function (data, textStatus) { alert(textStatus); }
});
}
功能测试(){
var dataarr=[[]];
对于(变量i=0;i<1;i++){
dataarr[i][0]=“A”+i.toString();
dataarr[i][1]=“B”+i.toString();
}
var model=JSON.stringify(dataarr);
$.ajax({
url:“/Home/testMethod”,
数据:模型,
类型:“POST”,
传统的:是的,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:功能(结果){
警报(“运行”);
},
错误:函数(数据,文本状态){警报(文本状态);}
});
}
像这样更改ajax
$.ajax({
url: '/DiemDanh/testMethod',
data: { info: JSON.stringify(ngay) },
type: "POST",
traditional:true,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert('running');
},
error: function (data, textStatus) { alert(textStatus); }
});
}
像这样更改ajax
$.ajax({
url: '/DiemDanh/testMethod',
data: { info: JSON.stringify(ngay) },
type: "POST",
traditional:true,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
alert('running');
},
error: function (data, textStatus) { alert(textStatus); }
});
}
使用字符串多维数组更改您的方法参数它将起作用,因为列表字符串列表参数将不起作用它将不接受二维数组
[HttpPost]
public ActionResult testMethod(string [][] info)
{
return RedirectToAction("Index");
}
使用字符串多维数组更改您的方法参数它将起作用,因为列表字符串列表参数将不起作用它将不接受二维数组
[HttpPost]
public ActionResult testMethod(string [][] info)
{
return RedirectToAction("Index");
}
展开调用的response选项卡,您将看到错误的详细信息展开调用的response选项卡,您将看到错误的详细信息。我尝试过调试,当函数运行到$.ajax时,它会出现错误。我无法在ajax代码中调试。ajax是一种jquery方法。此代码在我的本地语言中运行良好。您可以调试javascr浏览器开发工具中的ipt。我尝试过,但仍然出错。我尝试过调试,当函数运行到$.ajax时,它会出错。我不能用ajax代码进行调试。ajax是一种jquery方法。这段代码在我的本地环境中运行良好。您可以在浏览器开发工具中调试javascript。这仍然是错误。您有其他方法将2d数组发送到控制器吗?仍然是错误的。您有其他方法吗您有另一种方法将2d数组发送到控制器吗?打开浏览器开发人员工具(ctrl+shift+I)并在出现500个内部服务器错误时选择网络选项卡。您可以单击错误链接查看详细信息错误打开浏览器开发人员工具(ctrl+shift+I)当您收到500个内部服务器错误时,请选择“网络”选项卡。您可以单击错误链接查看错误详细信息