我对 Kendo UI 很陌生,如果有人可以提供建议,我将不胜感激。选择网格行时,我需要获取特定列的值。到目前为止,我可以获得所选行的所有列的值:
$("#grid").kendoGrid({
...
change:onChange,
columns: [{
field: "Number",
title: 'Number',
}, {
field: "Title",
title: "Title",
}]
});
Run Code Online (Sandbox Code Playgroud)
onChange 函数:
function onChange(arg) {
var selected = $.map(this.select(), function (item) {
return $(item).text();
});
alert(selected);
}
Run Code Online (Sandbox Code Playgroud)
我需要取Number列的选定值。喜欢的东西$(item[name='Number']).text();
我知道我可以解析字符串,但我想有另一种方式。
非常感谢
我有简单的剑道网格。
我想用网格列之外的外部按钮触发创建、保存等按钮。
有关更多信息,请参见图像。
我怎么能在Kendo Grid中做到这一点?
感谢您的任何建议。 
我有一个 kendoGrid(),在 Javascript UI 中,配置参数为“editable: true”。是否可以只设置我网格的特定列可编辑?
我尝试两种方式,首先:
<div id="grid"></div>
<script>
$("#grid").kendoGrid({
columns: [
{ field: "name" },
{ field: "age" }
],
filterable: {
mode: "row"
},
editable: true,
dataSource: [{ id: 1, name: "Jane", age: 30 }, { id: 2, name: "John", age: 33 }],
schema: {
model: {
id: "id",
fields: {
name: { editable: true },
age: { editable: false }
}
}
}
});
</script>
Run Code Online (Sandbox Code Playgroud)
第二种方式:
<div id="grid"></div>
<script>
$("#grid").kendoGrid({
columns: [
{ field: "name", editable: …Run Code Online (Sandbox Code Playgroud) 试图将我格式化的数组放入剑道 UI 网格中。这是我正在使用的代码。
$(document).ready(function (){
$("#grid").kendoGrid({
columns: [
{ title: "Ticket Number", field: "0" },
{ title: "Title", field: "1" },
{ title: "Created On", field: "2" },
{ title: "Modified On", field: "3" },
{ title: "Queue", field: "4" },
{ title: "Status", field: "5" },
{ title: "Account", field: "6" },
{ title: "Contact", field: "7" },
{ title: "Service Type", field: "8" },
{ title: "Issue Type", field: "9" }
],
dataSource: dataset
});
});Run Code Online (Sandbox Code Playgroud)
变量数据集包含一个列和行列表,其中包含我希望显示的数据。运行代码时,我得到:
Uncaught …Run Code Online (Sandbox Code Playgroud)我正在显示使用以下格式设置为百分比的数值:
columns.push(
{
field: key,
hidden: false,
format: "{0:p2}"
});
Run Code Online (Sandbox Code Playgroud)
当该字段应该显示时,1.00%它会100.00%像明智地显示任何给定的值it's adding zeros,另外一个值是65.37%,输出是6,537.00%
我缺少任何设置或格式有问题吗?问题是我正在动态创建网格,因此我无法显示完整的网格设置。
在上面你可以看到我正在推送列,它是一个数组,它将被传递给创建网格的函数。
telerik string-formatting number-formatting kendo-ui kendo-grid
我有一个剑道网格,其中一列可以有空值。但是当有空值时,我看不到网格填充。我的代码在这里:
$(document).ready(function() {
$("#grid").kendoGrid({
dataSource: gridData,
columns: [{
field: "name",
title: "Name"
}, {
field: "result",
title: "Result",
template: "# if (result == null) { #" +
"<span data-content=' '></span> } #" +
"# } else { #" +
"<span data-content=\"#: result#\"> </span>"
}]
});
});
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我出错的地方。
我有一个分组的剑道网格,需要捕获折叠和展开事件。对于带有细节的网格,有 detailExpand 事件。组展开/折叠是否有等价的东西?
我正在尝试使用自定义命令按钮设置行的状态字段。网格数据源传输定义如下:
transport: {
read: {
url: "/agent/AgentList",
type: "POST",
dataType: "json",
data: addAntiForgeryToken
},
update: {
url: "/agent/UpdateAgent",
type: "POST",
dataType: "json",
data: addAntiForgeryToken
}
},
Run Code Online (Sandbox Code Playgroud)
自定义命令定义如下:
{
command: [
{
name: "accept",
visible: function(dataItem) {
return dataItem.StatusId === 1;
},
text: "@T("Ralfeus.Agent.Accept")",
click: function(e) {setOfferResponse(this, e, 2);}
}
]
}
Run Code Online (Sandbox Code Playgroud)
实际设置字段的函数定义如下:
function setOfferResponse(grid, sender, response) {
sender.preventDefault();
var dataItem = grid.dataItem($(sender.currentTarget).closest("tr"));
dataItem.StatusId = response;
grid.editRow($(sender.currentTarget).closest("tr"));
grid.saveChanges();
}
Run Code Online (Sandbox Code Playgroud)
我期望 saveChanges() 调用触发数据源传输的更新方法。但是,它既不会向服务器发出任何请求,也不会报告错误。
我还尝试将 grid.saveChanges() 替换为 grid.dataSource.sync() (顺便说一下 - 有什么区别?)正如这里建议的那样 …
我已经在我的项目中实现了剑道网格。如果数据不存在,我想向网格显示“无可用记录”消息。我为我的网格将 noRecords 设置为 true 并且它按预期工作。现在我的项目中有这么多网格,所以我想为所有网格全局设置这个设置。
有没有办法实现?
这是我的示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Kendo UI Snippet</title>
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2018.1.117/styles/kendo.common.min.css"/>
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2018.1.117/styles/kendo.rtl.min.css"/>
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2018.1.117/styles/kendo.silver.min.css"/>
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2018.1.117/styles/kendo.mobile.all.min.css"/>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script src="https://kendo.cdn.telerik.com/2018.1.117/js/kendo.all.min.js"></script>
</head>
<body>
First Grid:
<div id="grid"></div>
Second Grid:
<div id="grid1"></div>
<script>
$("#grid").kendoGrid({
columns: [
{ field: "name" },
{ field: "age" }
],
pageable: true,
noRecords: {
template: "No data available"
},
dataSource: {
page: 1,
pageSize: 10
}
});
$("#grid1").kendoGrid({
columns: [
{ field: "name" },
{ …Run Code Online (Sandbox Code Playgroud) 我是剑道网格的新手。我有一列名为Status,列的可能值为1,2,3. 如果该值等于 1 或 2,我希望在单元格中显示文本“好”。如果值为 3,我希望在单元格中显示按钮“应用”按钮。用户可以点击按钮触发一个弹出窗口并在那里做一些事情。
我曾经使用过 ag-grid,我知道我可以在 cellRenderer:(params)=>{...} 中执行此操作,以根据此单元格的值显示不同的文本。然后,如果值为 3,则在 onCellClicked:(params)=>{...} 中触发弹出窗口。
我怎样才能在剑道网格中做同样的事情?