5

当我点击更新按钮弹出剑道网格时,怎么会出现这个错误?

  • Firefox浏览器中的错误是这种形式:SyntaxError: missing ; before d.0=value

  • Chrome浏览器中:Uncaught SyntaxError: Unexpected number

我已经上传了一个关于这个错误的视频,以便详细说明 n 东西

Jsfiddle 代码

视频

代码

transport: {
    read: {
        url: 'https://dl.dropboxusercontent.com/sh/u9oxg5f6uweqh40/CbR3pNVg04/documentj',
        dataType: 'json',
        type: 'get',
        cache: false
        },
    update: function(e) { return true; }
}
save: function (e) {
    var that = this;
    $.ajax({
        url: '/echo/json',
        type: e.model.id == null ? 'POST' : 'PUT',
        contentType: 'application/json',
        dataType: 'json',
        data: JSON.stringify(e.model),
        success: function (data) {
            // Alertify.log.success(data);
            console.log('ok dadasaved');
            that.refresh();
        },
        error: function (data) {
            //  Alertify.log.error(data);
            console.log('no datasaved');
            that.cancelRow();
        }
    });
}
4

2 回答 2

2

您应该提供更多代码来检测代码有什么问题,但阅读内容可能会对您有所帮助:

当传输定义不一致时会发生此类错误。换句话说,如果您想使用自定义传输方法,则所有传输类型都应定义为函数。

不支持标准读取传输和自定义更新。请将所有传输配置为函数,如果错误仍然发生,请告诉我。

于 2013-10-10T09:28:49.493 回答
1

我有同样的错误,对我来说问题是dataType没有为所有transport方法设置选项。我用下面的评论标记了该行:

var linksDataSource = new kendo.data.DataSource({
    transport: {
        read: {
            dataType: "json",
            url: 'read-url',
            type: "get"
        },
        destroy: {
            dataType: "json", /* <============ THIS LINE WAS MISSING */
            url: 'delete-url',
            type: "delete"
        },
        update: {
            dataType: "json",
            url: 'update-url',
            type: "post"
        },
        create: {
            dataType: "json",
            url: 'create-url',
            type: "post",
            complete: function () {
                $("#searchResult").data("kendoGrid").dataSource.read();
            }
        },
/* ... */
于 2015-09-23T10:39:24.507 回答