jquery – Kendo dataSource参数图

前端之家收集整理的这篇文章主要介绍了jquery – Kendo dataSource参数图前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我是剑道新手.我遇到模型绑定问题.当我用firebug调试时,它显示options.models是未定义的.由于这个原因,parrameterMap中的“if”条件始终为false,并且grid不会填充数据.但是,当我删除parrameterMap部分时,它的工作原理.
我想,如果有人可以解释一下kendo dataSource中的参数映射,那将非常有用.
谢谢.

    function GetDataSource() {
    var PrjKy = $("#cmbPrjNm").val();
    if (PrjKy == "") { PrjKy = 1; }

    var PrcsDetKy = 1;
    if (PrcsDetKy == "") { PrcsDetKy = 1; }

    var PrcsTypKy = $("#toDotype").val();
    if (PrcsTypKy == "") { PrcsTypKy = 1; }

    var AprPrtyKy = $("#cmbPiority").val();
    if (AprPrtyKy == "") { AprPrtyKy = 1; }

    var AprStsKy = $("#status").val();
    if (AprStsKy == "") { AprStsKy = 1; }

    var OrginAdrKy = 1;
    if (OrginAdrKy == "") { OrginAdrKy = 1; }

    var AprUsrKy = 1;
    if (AprUsrKy == "") { AprUsrKy = 1; }

    var NxtActByAdrKy = $("#cmbEmployee").val();
    if (NxtActByAdrKy == "") { NxtActByAdrKy = 1; }

    var FrmNxtActEntDt = $("#FrmNextActEnt").val();
    var ToNxtActEntDt = $("#ToNextActEnt").val();

    var FrmNxtActDt = $("#rcdDt").val();
    var ToNxtActDt = $("#toDt").val();

    var FrmInsertDt = $("#insrtDt").val();
    var ToInsertDt = $("#InsrtToDt").val();

    var dataSource = new kendo.data.DataSource({
        transport: {
            read: {
                url: '@Url.Content("~/User/GetAllToDo")',data: {
                    'PrjKy': PrjKy,'PrcsDetKy': PrcsDetKy,'PrcsTypKy': PrcsTypKy,'AprPrtyKy': AprPrtyKy,'AprStsKy': AprStsKy,'OrginAdrKy': OrginAdrKy,'AprUsrKy': AprUsrKy,'NxtActByAdrKy': NxtActByAdrKy,'FrmNxtActEntDt': FrmNxtActEntDt,'ToNxtActEntDt': ToNxtActEntDt,'FrmNxtActDt': FrmNxtActDt,//changed on 2013-8-30
                    'ToNxtActDt': ToNxtActDt,//changed on 2013-8-30
                    'FrmInsertDt': FrmInsertDt,//changed on 2013-8-30
                    'ToInsertDt': ToInsertDt//changed on 2013-8-30
                },dataType: "json"
            },update: {
                url: "~/Home/UpdateToDo",contentType: 'application/json; charset=utf-8',dataType: "json",type: "POST"
            },create: {
                url: '@Url.Content("~/Home/UpdateToDo")',destroy: {
                url: '@Url.Content("~/User/DeleteToDo")',parameterMap: function (options,operation) {
                if (operation !== "read" && options.models) {
                    return JSON.stringify({ models: options });
                }
            }
        },pageSize: 10,schema:
    {
        model:
        {
            id: "PrcsDetKy",//Primary key to uniquely identify the row.
            fields: //Relavent fields of the grid should be bind with following model items
                {
                ID: { editable: false,nullable: false },NxtActEntDt: { editable: true,nullable: false,validation: { required: true} },AprPrty: { editable: true,AprUsr: { editable: true,nullable: true },AprSts: { editable: true,AprStsKy: { editable: true,AprPrtyKy: { editable: true,AprUsrKy: { editable: true,AprResnKy: { editable: true,PrjId: { editable: true,TaskId: { editable: true,TaskNm: { editable: true,//validation: { required: true}
                PrcsDetKy: { editable: false,TaskTyp: { editable: true,PrcsTypKy: { editable: true,PrjKy: { editable: true,PrcsDetAprKy: { editable: true,PrjNm: { editable: true,Des: { editable: true,NxtActByAdr: { editable: true,NxtActByAdrKy: { editable: true,NxtActDt: { editable: true,Rem: { editable: true,nullable: true,type: "string" },OriginBy: { editable: false,Hyperlinks1: { editable: false,Hyperlinks2: { editable: false,Hyperlinks3: { editable: false,Hyperlinks4: { editable: false,OrginAdrKy: { editable: true,WrkStnKy: { editable: true,ObjKy: { editable: true,ObjCd: { editable: true,ObjNm: { editable: true,ItmKy: { editable: true,ItmCd: { editable: true,IsAct: { editable: true,IsApr: { editable: true,OrgEntDt: { editable: true,nullable: true }
            }
        }
    }
    });
    return dataSource;
}
最佳答案
你可以在这里找到相当清楚的解释parameterMap

您应该使用parametrMap定义自定义参数集或在调用远程服务期间执行其他操作.基本上你在这里说,如果我正在阅读,更新或删除(这是你的代码片段中“read”值的操作变量)我想将以下参数添加到我在“transport”中定义的方法中.

在您的情况下,您似乎没有定义options.models,这意味着您的数据源没有任何变量/集合模型.嗯,它不必.对我来说,你试图调用的read方法看起来并不真正需要任何参数,所以你可能只是从paramMap返回空字符串,或者根本没有这个配置部分.

注意:您定义数据源的方式有点令人困惑,您在定义“url”时不应提供配置“数据”,例如.你正在获取网址的数据.见Local vs Remote.

猜你在找的jQuery相关文章