0

我正在使用带有剑道网格的剑道数据源进行内联编辑。当我添加/创建新行时,新行将发布到我的创建 URL(我正在使用帖子)。我的问题出在查询参数中,id 字段的值为零,有没有办法在某些 js 事件中将其设为空或将其从查询字符串中删除。在将其发布到创建 url 之前。

谢谢。

4

2 回答 2

1

听起来 ID 应该是一个自动增量字段,在这种情况下,您不会将 id 插入数据库。然后,您的数据源应该有这样的东西(未记录的方法)在创建后刷新网格,这将使用数据库分配的 ID 填充您的 ID 字段:

create: {
    url: "[your create url]",
    complete: function(e){
        $('#grid').data('kendoGrid').dataSource.read();
    }
}

那应该可以解决您的问题。

于 2012-05-30T15:20:34.193 回答
0

不,最新的 KendoUI 的数据源传输方法没有名为“完成”的参数。您必须使用 jquery ajax 请求。此外,您只能使用 KendoUI 的 trasnport 方法或 jquery ajax。结合是行不通的。例如:

create:function (options) {
    $.ajax({
        url:base + entityName + "/create",
        data:"models=" + kendo.stringify(options.data.models),
        type:"POST",
        dataType:"json",
        async:false,
        global:false,
        success:function (result) {
            if (result.errors == null) {
                //GridHandlers.refreshGrid(gridId);
                options.success(result);
            } else {
                GridHandlers.accounceAndResume(gridId, result.errors);
            }
        },
        error:function (xhr, textStatus, errorThrown) {
            console.log("Error: " + (errorThrown ? errorThrown : xhr.status));
            GridHandlers.accounceAndResume(gridId, "Could not create new record. Connection problem!");
        }
    });
},

对你来说重要的是你在成功方法中所做的事情。快乐编码!

于 2012-11-01T03:08:36.380 回答