JTable:'在更新或删除记录时与服务器通信时发生错误'

时间:2013-12-19 19:26:43

标签: jquery jquery-ui asp.net-mvc-4 jquery-jtable

到现在为止,我几个小时都陷入了这个问题。

我试图通过删除或编辑来更新jTable行的记录,但每次我都面临同样的错误(即在与服务器通信时发生错误)。

我尝试了很多来解决这个问题,但直到现在还没有成功。

我成功地能够添加记录(即“教授”类的对象)。但是没有执行编辑,并且没有执行相应对象(即教授)控制器的HTTPPost启用方法。

我附上了截图。

enter image description here

此外,以下是jTable代码。

<div id="ProfessorTableContainer"></div>
<script type="text/javascript">
    $(document).ready(function ()
    {
        $('#ProfessorTableContainer').jtable({
            title: 'Professor List',
            paging: true,
            pageSize: 10,
            sorting: false,
            actions:
            {
                listAction:   '@Url.Action("GetProfessors")',
                deleteAction: '@Url.Action("DeleteProfessor")',
                updateAction: '@Url.Action("UpdateProfessor")',
                createAction: '@Url.Action("CreateProfessor")'
            },
            fields: {
                ProfessorId:
                 {
                     key: true,
                     create: false,
                     edit: false,
                     list: false
                 },
                ProfessorName:
                {
                    title: 'Name',
                    width: '23%'
                }

            }

        });
        $('#ProfessorTableContainer').jtable('load');
        //Load all records when page is first shown

    });

以下是Controller的Update Method或Delete方法的代码片段。

 [HttpPost]
        public JsonResult DeleteProfessor(int  profId)
        {
            try
            {
                ProfRepository.DeleteProfessor(profId);
                return Json(new { Result = "OK" });
            }
            catch (Exception ex)
            {
                return Json(new { Result = "ERROR", Message = ex.Message });
            }
        }

我非常感激有人帮助我。 我有点陷入困境,不知道如何解决这个问题。我已经看到了所有的领域,一切看起来都很完美和足够好。

此致 乌斯曼

1 个答案:

答案 0 :(得分:3)

原因1 :crud方法参数名称必须“记录”
示例:公共静态对象(产品记录)

原因2 :模型类必须是无参数构造函数
示例:public Product(){}