我正在使用MVC4开发Web应用程序。我在UI中有HandsOnTable。我试图用json绑定数据,但不能。而且不告诉显示错误。这是代码段
$.ajax({
url: "/Customer/GetSpreadSheetGrid",
type: "GET",
dataType: "json",
data: { customerId: customerID }
})
.success(function (result) {
var vSpreadSheet = document.getElementById("SpreadSheetgrid");
$("#SpreadSheetgrid").handsontable("loadData", result);
})
.fail(function (r, o) {
alert("Failed : " + r.responseText);
});
}
这是我的控制器方法
public JsonResult GetSpreadSheetGrid(int customerId)
{
IEnumerable<tblCustomerSpreadsheetInfo> resResult = null;
// Calling SP
resResult = _customer.GetCustomerCustomInfoByCustomerID(customerId);
return Json(resResult, JsonRequestBehavior.AllowGet);
}
这段代码中的错误是什么。
答案 0 :(得分:3)
<div id="dataTable" class="dataTable"></div>
$("#dataTable").handsontable({
rows: 6,
cols: 8,
contextMenu: true,
colHeaders: true
});
var url = "/Home/GridData";
$.get(url, null, function (data) {
$("#dataTable").handsontable("loadData", data);
strong text});
这是HomeController中的方法
public JsonResult GridData()
{
var jsonData = new[]
{
new[] {"1", "4", "Is this a good question?"},
new[] {"2", "5", "Yes."},
new[] {"3", "6", "It is!"}
};
return Json(jsonData, JsonRequestBehavior.AllowGet);
}
我使用此代码实现了绑定控制器方法。 但我真的很难获取数据并将其作为string [] []传递给控制器方法。
答案 1 :(得分:0)
修改你的jquery ajax如下(在成功和失败函数中保留一个调试器。使用IE和Visual Studio调试它。如果有的话,你可以看到错误。
$.ajax({
url: "/Customer/GetSpreadSheetGrid",
type: "GET",
data: { customerId: customerID },
contentType: "application/json; charset=utf-8",
success: function (_results) {
debugger;
var vSpreadSheet = document.getElementById("SpreadSheetgrid");
$("#SpreadSheetgrid").handsontable("loadData", result);
},
error: function (_results, status) {
debugger;
}
});