我正在尝试将我的handsontable的内容发送到我的控制器操作。表函数很好,我设法调用操作但对象为null。如何将我的handontable的内容发布到我的控制器操作?谢谢你的帮助!
<script src="../../Scripts/jquery.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-ui.custom.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.handsontable.full.js" type="text/javascript"></script>
<script src="../../Scripts/numeral.sv-se.js" type="text/javascript"></script>
<link href="../../Content/themes/base/jquery-ui.custom.css" rel="stylesheet" type="text/css" />
<link href="../../Content/themes/base/jquery.handsontable.full.css" rel="stylesheet" type="text/css" />
<link href="../../Content/themes/base/demo-style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(function () {
var $container = $("#handsonDataTable");
var $console = $("#handsonDataConsole");
var $parent = $container.parent();
var autosaveNotification;
$container.handsontable({
startRows: 8,
startCols: 6,
rowHeaders: true,
colHeaders: true,
minSpareRows: 1,
contextMenu: true,
});
var handsontable = $container.data('handsontable');
$("button").click(function () {
$.ajax({
url: "/Home/TableData",
data: { "data": handsontable.getData() }, //returns all cells' data
dataType: 'json',
type: 'POST',
success: function (res) {
if (res.result === 'ok') {
$console.text('Data saved');
}
else {
$console.text('Save error');
}
},
error: function () {
$console.text('Saved.');
}
});
});
</script>
<div id="handsonDataTable"></div>
<div id="handsonDataConsole"></div>
<button>Click me</button>
在我的控制器中:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace HandsonTable.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
return View();
}
[HttpPost]
public ActionResult TableData(Object tabledata)
{
return View();
}
}
}
答案 0 :(得分:0)
问题出在控制器中。 Ajax请求没问题。您需要修改此代码。尝试将其更改为更简单的版本,返回"hello world"
或其他内容并检查它是否运行(这样您就不会使用ajax获得错误500)。您也可以直接向控制器询问新问题。我没有asp.net的技能,所以我可以建议。
您可能还会发现this guide有用。