剑道网格删除行,但不调用销毁 URL
Posted
技术标签:
【中文标题】剑道网格删除行,但不调用销毁 URL【英文标题】:Kendo grid removes row, but does not call destory URL 【发布时间】:2018-06-19 22:35:59 【问题描述】:我有一个剑道网格,我正在尝试添加删除功能。我的数据源看起来像:
var datasource = new kendo.data.DataSource(
transport:
read:
url: Router.action("Admin", "GetScansForMailItem", mailItemIdnt: detailinit.data.MailItemIdnt ),
dataType: "json"
,
destroy:
url: Router.action("Admin", "DeleteScan"),
type: "post"
,
model:
id: "ScanIdnt",
fields:
ScanIdnt: editable: false, nullable: false
,
pageSize: 5
);
我添加了模型部分,因为this 回答,但它没有任何区别。
实际的网格如下所示:
.kendoGrid(
dataSource: datasource
scrollable: false,
sortable: true,
pageable: true,
editable: "inline",
columns: [
field: "ScanIdnt",
title: "Scan ID"
,
field: "CreatedDate",
title: "Created",
template: "#= kendo.parseDate(CreatedDate, 'yyyy/MM/dd') #"
,
field: "ScanDocumentRelativePath",
title: "File Path",
template: "<a href='/CAMP/Admin/Download?scanIdnt=#= ScanIdnt #'>#= ScanDocumentRelativePath.substring(1) #</a>"
,
field: "ScanUserIdnt",
title: "Scanned By"
,
command: "destroy",
title: ""
]
);
奇怪的是,单击删除按钮会从 UI 上的网格中删除,但绝对没有对 destroy
URL 进行 Ajax 调用。我似乎无法弄清楚为什么。有什么想法吗?
编辑我想指出,这个网格实际上是另一个网格内的嵌套网格(如here)我发现父网格句柄实际上是在调用,但是到错误的功能。由于某种原因,它在一个到级别的项目上单击删除会调用嵌套网格的读取函数,但是,嵌套网格什么都不做
【问题讨论】:
点击删除按钮后浏览器控制台是否出现错误? @Supersnake 不,绝对没有。 再次查看您的网格代码。您的数据源的拼写错误。 哦是的对不起,我在这里粘贴代码后更改了它,因为数据源实际上是通过函数返回的。在实际代码中是正确的。 【参考方案1】:想通了(有点)。虽然我认为我的代码和网格存在很多问题,但似乎 Kendo 不喜欢我处理数据的方式。
在与分层网格相关的 Kendo 文档中,子网格的数据存储在父网格的数据字段中。例如,给定以下 JSON:
"ParentItems": [
"Id": 12345 ,
"Name": "Test1",
"ChildItems": [
"Id": 1, "Name": "Test",
"Id": 2, "Name": "Test"
]
,
"Id": 12346 ,
"Name": "Test2",
"ChildItems": [
"Id": 1, "Name": "Test",
"Id": 2, "Name": "Test"
]
]
在父网格中,每个ParentItem
都会在子网格中显示其各自的ChildItems
。
另一方面,我分别提取两个数据集。基本上,我拉了ParentItem
s 之类的:
"ParentItems": [
"Id": 12345,
"Name" : "Test1"
,
"Id": 12346,
"Name" : "Test2"
]
然后根据父项的 id 再次请求拉取子项。
"ChildItems": [
"Id": 1, "Name": "Test", "ParentId": "12345",
"Id": 2, "Name": "Test", "ParentId": "12345"
]
我能够像第一个示例中那样修改服务器端代码以提供数据,并设法使事情正常进行。可以找到帮助我的具体文档here
【讨论】:
以上是关于剑道网格删除行,但不调用销毁 URL的主要内容,如果未能解决你的问题,请参考以下文章