嗨,我在jquery中使用以下代码创建了一个Kendo Grid:
剑道网格:
$('#divFolderNotes').kendoGrid({
dataSource: data
batch: true,
columns: [
{ field: "Text", title: "Note Text" },
{ field: "CreatedByDisplayName", width: '190px', title: "Created By" },
{ field: "CreatedDateTime", width: '190px', title: "Created Datetime" },
],
scrollable: true,
sortable: true,
reorderable: true,
resizable: true,
height: 250,
selectable: "row",
autoSync: true,
editable: true,// "inline",
navigatable: true,
columnMenu: true,
pageable: {
refresh: true,
pageSizes: true,
buttonCount: 5
},
})
Run Code Online (Sandbox Code Playgroud)
问题:
第一列注释文本将包含将包含HTML格式数据的值.
为了更好的想法,下面是一个例子:
现在数据显示为:
First Name : Nitin <br/> Second Name …Run Code Online (Sandbox Code Playgroud) 我找到了类似标题的帖子,但我仍然无法解决我的问题.我肯定做错了什么.
在Kendo网格配置中有一些功能,它采用上下文(网格)和读取所选行:
change: function (e) {
refresh(this);
}
Run Code Online (Sandbox Code Playgroud)
这就是我配置"更改"事件的方式.
在函数"刷新(网格)"中,我将按以下方式选择行:
refresh: function (grid) {
var selectedRows = grid.select();
var selectedRow = grid.dataItem(selectedRows[0]);
var id = selectedRow.Id;
}
Run Code Online (Sandbox Code Playgroud)
当我手动选择网格行时,此方法非常有效.但是当我以编程方式选择行时,"selectedRow"变量为null.
我按照以下方式以编程方式选择:
var grid = $("#grid").data("kendoGrid");
var rows = grid.dataSource.data();
var row = rows[rows.length - 1];
grid.select(row);
Run Code Online (Sandbox Code Playgroud)
正如我在上面的悲伤,在之前的"刷新(网格)"方法变量selectedRow将为null.
有没有人对此有一些看法?为什么会这样?
谢谢
我试图刷新下拉列表后另一个DropDownList是更改但刷新()方法是未定义错误正在提升.为我尝试再次读取数据源,它显示它加载但数据仍然是相同的.帮助解决请问这个问题.
码:
$("#DropDownList1").change(function () {
custCode = $("#DropDownList1").val();
$("#titles").data("kendoDropDownList").dataSource.read(); //shows list Loading But Same Data Is present .
$("#titles").data("kendoDropDownList").refresh(); //NOT Working
});
Run Code Online (Sandbox Code Playgroud) 我正在使用KendoUI的树视图,并希望为用户提供过滤它的可能性.甚至有一个演示可以做我想要的(http://demos.kendoui.com/web/treeview/api.html)
问题是过滤器仅应用于TreeView的第一层次结构,因此如果过滤器文本存在于子级而不是父级,则不会显示子级.
例:
如果搜索文本为"abc",则不会显示任何项目.相反,我希望得到以下结果:
有谁知道如何做到这一点?这是我正在使用的代码:
var tree_view_data = new kendo.data.HierarchicalDataSource({
transport: {
read: {
url: "getall/items",
dataType: "json"
}
},
schema: {
model: {
children: "ChildItems"
}
}
});
//init tree view itself
var $treeview = $("#div-treeview").kendoTreeView({
dataSource: tree_view_data,
dataTextField: [ "Text", "ChildrenText" ]
});
//allow filter of navigation tree
var refreshTree = function () {
tree_view_data.filter({
field: "Text", //if I would use "ChildrenText" here nothing be displayed at all if filtertext is set …Run Code Online (Sandbox Code Playgroud) 是否可以在读取数据和避免第二次服务器读取之前以编程方式设置KendoUI DataSource的sort参数?范围是为特定用户交互设置默认排序.怎么样?
这是我想要做的一个例子,因为答案没有达到目的(或者我可能不理解事情如何运作).
我用一个初始排序定义了一个Kendo DataSource:
var datasource = new kendo.data.DataSource({
parameterMap: function (inputParams, operation) {
return JSON.stringify(inputParams)
},
// default sort
sort: [
{field: "field_1", dir: "asc"},
{field: "field_2", dir: "asc"}
]
});
Run Code Online (Sandbox Code Playgroud)
此DataSource绑定到Kendo网格:
var grid = $("element").kendoGrid({
dataSource: datasource
});
Run Code Online (Sandbox Code Playgroud)
然后我有一个按钮,在DataSource上调用"read"并使用第一页数据填充网格:
$("#btn").bind("click", function(e) {
datasource.page(1);
});
Run Code Online (Sandbox Code Playgroud)
这样,在单击按钮后,用户获取按"field_1"和"field_2"排序的数据,并且网格在列标题上显示此排序.然后,用户可以通过单击列标题以任何方式重新排序数据.
我想要做的是将默认排序重置为初始值,如DataSource声明中所定义,在列标题上再次显示它,而不再创建新的DataSource.
就像是:
$("#btn").bind("click", function(e) {
datasource.sort = [
{field: "field_1", dir: "asc"},
{field: "field_2", dir: "asc"}
];
datasource.page(1);
});
Run Code Online (Sandbox Code Playgroud)
所提供的解决方案似乎没有达到这一点(我仍然不明白为什么我会因为一个似乎不是那么微不足道并且应该由框架解决的合法问题而失去声誉点).
请告诉我我错了(我不担心失去声誉 - 我想了解如何解决问题).
destroy()在KendoUI Grid中调用然后在new上重新创建表时DataSource:为什么旧表列仍然存在?
这里唯一保留说法的元素是元素.如何告诉网格读取新的数据源列(它读取其他所有正确的内容).
(如果我制作了2个不同的元素,它们都填充正确,但我只是保留1个元素并通过destroy和reinit替换元素表)
我正在尝试使用下面的代码设置我的DatePicker的值,并期望"更改"事件被提升但事实并非如此.
var datePicker = $("#datePicker").data("kendoDatePicker");
var previousDate = new Date(datePicker.value());
previousDate.setDate(previousDate.getDate() - 1);
$("#displayDate").text(kendo.toString(new Date(previousDate), 'D'));
datePicker.value(previousDate);
Run Code Online (Sandbox Code Playgroud)
通过用户界面更改日期值确实按预期引发"更改"事件.
我正在尝试刷新Kendo UI网格但尚未成功.有人请告诉我错过了什么或我做错了什么?
我有以下代码:
.cshtml:
$('#btnRefresh').click(function (e){
$.ajax({
type: 'POST',
url: "@(Url.Content("~/Administration/RefreshAll/"))",
success: function () {
$("#Product").data("kendoGrid").dataSource.read();
$('#Product').data('kendoGrid').refresh();
//grid.refresh();
location.reload(true);
},
error: function (){
$("#btnRefresh").removeAttr('disabled');
}
});
});
Run Code Online (Sandbox Code Playgroud)
控制器:
public ActionResult RefreshAll([DataSourceRequest] DataSourceRequest request)
{
db.ProcessAll();
Response.Cache.SetCacheability(HttpCacheability.NoCache);
return View();
}
Run Code Online (Sandbox Code Playgroud) 我试图以下面的方式更改我的剑道网格的列集合.
var grid = $("#grid").data("kendoGrid");
$http.get('/api/GetGridColumns')
.success(function (data) {
grid.columns = data;
})
.error(function (data) {
console.log(data);
});
Run Code Online (Sandbox Code Playgroud)
这是更改列集合但不立即反映在我的网格中.但是当我尝试在网格中执行某些操作(比如分组)时,我的新列集就出现了.
请让我知道如何实现这一目标.
此致,Dilip Kumar
我是使用Kendo Grid和Kendo UI的新手.我的问题是如何解决此错误
Uncaught TypeError: Cannot read property 'replace' of undefined
Run Code Online (Sandbox Code Playgroud)
这是我在KendoGrid上的代码
$("#Grid").kendoGrid({
scrollable: false,
sortable: true,
pageable: {
refresh: true,
pageSizes: true
},
dataSource: {
transport: {
read: {
url: '/Info/InfoList?search=' + search,
dataType: "json",
type: "POST"
}
},
pageSize: 10
},
rowTemplate: kendo.template($("#rowTemplate").html().replace('k-alt', '')),
altRowTemplate: kendo.template($("#rowTemplate").html())
});
Run Code Online (Sandbox Code Playgroud)
导致错误的行
rowTemplate: kendo.template($("#rowTemplate").html().replace('k-alt', '')),
Run Code Online (Sandbox Code Playgroud)
rowTemplate的HTML
<script id="rowTemplate" type="text/x-kendo-tmpl">
<tr class='k-alt'>
<td>
${ FirstName } ${ LastName }
</td>
</tr>
</script>
Run Code Online (Sandbox Code Playgroud) kendo-ui ×10
javascript ×5
kendo-grid ×5
jquery ×4
telerik ×4
asp.net ×1
datasource ×1
grid ×1
sorting ×1
telerik-grid ×1