我一直试图让这段代码工作一段时间,而且我的想法已经用完了.我在线查看,找不到任何有用的东西.
我有一个网格定义,其中有一个人员列表.用户可以单击该人员将其添加到他们的联系人.我有一个自定义命令,它为我的Action做了一个帖子.
这可能最终会让我感到很简单.
我无法获取Grid的dataItem.以下是我收到的错误:
Uncaught TypeError: Cannot read property '0' of undefined
y.extend.dataItem
addContact
p.isFunction.f
p.event.dispatch
g.handle.h
Run Code Online (Sandbox Code Playgroud)
以下是我的Javascript函数:
function addContact(e) {
debugger;
e.preventDefault();
var dataItem = this.dataItem($(e.currentTarget).closest("tr")); // <-- ERRORS HERE
var id = dataItem.Id
var url = "@Url.Action("AddContact", "Contacts")";
alert(url);
$.ajax({
url: url,
type: 'POST',
data: { contactID: id },
});
}
Run Code Online (Sandbox Code Playgroud)
网格:
@(Html.Kendo().Grid(ViewBag.Contacts as List<Contacts>)
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.FirstName);
columns.Bound(p => p.LastName);
columns.Bound(p => p.ReleaseDate);
columns.Command(command => command.Custom("Add").Click("addContact")).Width(80).HtmlAttributes(new { title = "Add Contact" });
}) …Run Code Online (Sandbox Code Playgroud) 网格有大约25列,Kendo网格尝试水平放置一页中的所有列,使列名显示为"...".
我想默认显示所有列名,并启用水平滚动条.
如何使用JSP包装器实现此目的?
<kendo:grid name="SRCHGT" resizable="true" sortable="true" height="500">
<kendo:grid-scrollable virtual="true"/>
<kendo:dataSource>
<kendo:dataSource-transport>
<kendo:dataSource-transport-read url="api/products"
contentType="application/json" type="GET"></kendo:dataSource-transport-read>
</kendo:dataSource-transport>
<kendo:dataSource-schema data="Data" total="Total" groups="data">
</kendo:dataSource-schema>
</kendo:dataSource>
</kendo:grid>
Run Code Online (Sandbox Code Playgroud) 我正在使用带有ASP.NET Web API的Kendo UI.有一个ProjectsController,它具有所有必要的方法.
我的问题是,当我点击Delete按钮时,Kendo UI网格将引发remove()事件,但从DataSource不调用transport.destroy.相反,它似乎tansport.create正在被调用.在transport.parameterMap我可以看到操作是创建而不是销毁.
以下是JavaScript代码示例:
$(document).ready(function () {
var apiUrl = '/api/projects/';
var dataType = 'json';
var dataSource = new kendo.data.DataSource({
batch: true,
autoSync: false,
transport: {
read: {
url: apiUrl,
dataType: dataType,
type: "GET"
},
update: {
url: apiUrl,
dataType: dataType,
type: "PUT"
},
destroy: {
url: apiUrl,
type: "DELETE"
},
create: {
url: apiUrl,
contentType: "application/json;charset=utf-8",
dataType: dataType,
type: "POST" …Run Code Online (Sandbox Code Playgroud) 我有一个Kendo Grid whit"x"列数,但用户可以隐藏列,我需要知道哪些列可见,只导出这些列的数据,我访问JS whit中的列
var columns = $("#grid").data("kedoGrid");
Run Code Online (Sandbox Code Playgroud)
但它返回所有列不仅是可见的.tankz
我正在使用带有ASP.NET MVC 4的Kendo UI网格
@Html.Label("Status: ")<select id="drStaus" style="width:250px">
<option value="Open">Open</option>
<option value="Pending">Pending</option>
<option value="Other">Closed</option>
</select>
<br /><br />
@(Html.Kendo().Grid((IEnumerable<FeedBackDashBord.Models.FeedBack>)Model)
.Name("grid")
.Columns(columns => {
columns.Bound(o => o.id).Visible(false);
columns.Template(o => Html.ActionLink("Edit", "Edit", new { o.id })).ClientTemplate("<a href=\"" + Url.Action("Edit", "DashBoard") + "/#= id#\">Edit</a>").Width(45);
columns.Bound(o => o.CurrentURL).Width("200px").Title("Reported URL");
columns.Bound(o => o.OS).Width("70px");
columns.Bound(o => o.Browser).Width("70px");
columns.Bound(o => o.UserAgent).Width("200px"); ;
columns.Bound(o => o.datetime).Title("Date Time").Width("100px");
columns.Bound(o => o.Description).Title("Description").Width("200px");
columns.Bound(o => o.Email).Width("150px");
columns.Bound(o => o.Status).Width("70px");
columns.Template(o => Html.ActionLink("Details", "Details", new { o.id })).ClientTemplate("<a href=\"" + Url.Action("Details", "DashBoard") …Run Code Online (Sandbox Code Playgroud) 我已经将一些数据绑定到Kendo网格,我遇到的问题是网格似乎只想显示两个小数位而不是5或6或者经度和纬度列的实际值.
这是我视图中的代码:
<div class="gridPadding">
@(Html.Kendo().Grid((IEnumerable<DealerPortal.Models.DealerViewModel>)ViewData["DealerResults"])
.Name("dealerSearchResults")
.Columns(columns =>
{
columns.Bound("DealerID");
columns.Bound("DealerName");
columns.Bound("TerminalID");
columns.Bound("Status");
columns.Bound("Address1");
columns.Bound("State");
columns.Bound("PhoneNumber");
columns.Bound("Email");
columns.Bound("Latitude");
columns.Bound("Longitude");
columns.Bound("EpayRetailerID");
})
.DataSource(dataSource => dataSource.Server().Model(model => model.Id(d => d.DealerID)))
.Selectable(selectable => selectable.Mode(GridSelectionMode.Multiple))
.Sortable()
)
</div>
Run Code Online (Sandbox Code Playgroud)
这是DealerViewModel类:
public class DealerViewModel
{
public long DealerID { get; set; }
public string DealerName { get; set; }
public string Address1 { get; set; }
public string PhoneNumber { get; set; }
public string Email { get; set; }
public decimal? Latitude { get; set; …Run Code Online (Sandbox Code Playgroud) 我找不到使用Kendo ui网格重绘/重置网格的正确功能.
这是我的小提琴:
我包含了一个名为"resetgrid"的函数,它应该重置/重新加载/重绘网格,但它不起作用.我该怎么做?
function resetgrid(){
var grid = $("#grid").data("kendoGrid");
grid.dataSource.read();
grid.refresh();
}
Run Code Online (Sandbox Code Playgroud)
非常感谢
我有一个数据源,它是从一个JSON数据字符串构建的,包含一个名为Fruit的字段:
[{
... /other entries
fruit: [{
name: 1
}, {
name: 2
}, {
name: 3
}]
}]
Run Code Online (Sandbox Code Playgroud)
我在一个KGrid中使用这个字段,并希望从名称中做一个逗号分隔的链接列表:
<a href="#">1</a>, <a href="#">2</a>, <a href="#">3</a>
Run Code Online (Sandbox Code Playgroud)
目前,我正在使用dataBound函数,并为该fruit字段单独构建它,是否有更简单的方法来执行此操作,比方说,模板?我试图在文档中查找有关类似内容的信息,但找不到与拆分数组有关的任何内容?
我的下拉列表工作正常,但我希望有一些像编辑字段,用户可以搜索值.有人能帮助我吗?它位于kendo网格的列中.这是我的下拉列表的代码.干杯!
{
field: "Material",
title: txt.TXT_MATERIAL,
width: "15%",
filterable: {
ui: function (element) {
kendoOdsMaterials.setFilterUi(element, undefined);
}
},
editor: function (container, options) {
if (PCommonPortalMethods.GetSiteLanguage() == "en") {
$('<input kendo-drop-down-list k-data-text-field="\'MaterialGlobalName\'" k-data-value-field="\'_Key\'" data-bind="value:' + options.field + '" k-data-source="dataSourceKendoOdsMaterials(undefined)" />').appendTo(container);
} else {
$('<input kendo-drop-down-list k-data-text-field="\'MaterialLocalName\'" k-data-value-field="\'_Key\'" data-bind="value:' + options.field + '" k-data-source="dataSourceKendoOdsMaterials(undefined)" />').appendTo(container);
}
},
template: "#if (PCommonPortalMethods.GetSiteLanguage() == 'en') {# #=Material.MaterialGlobalName# # } else { # #=Material.MaterialLocalName# # } #"
},
Run Code Online (Sandbox Code Playgroud) 我有以下代码:
function grd_onChange(e) {
var grid = $("#grd").data("kendoGrid");
var selectedCell = grid.select();
var index = selectedCell.index();
var row = selectedCell.closest("tr");
var col = selectedCell.closest("td");
alert(row);
}
Run Code Online (Sandbox Code Playgroud)
我想知道当用户单击网格的特定行的单元格时如何获取列索引。
kendo-grid ×10
kendo-ui ×9
javascript ×4
jquery ×3
angularjs ×1
asp.net-mvc ×1
java ×1
jsp ×1
razor ×1
telerik ×1