我有一个可编辑的剑道网格,有一个字段是一个下拉列表。我有一个U_UserId
和U_Name
字段需要在该列中使用。名称显然会显示,而ID应该是用于绑定的。我已经在下面的示例中删除了我的数据源URL,但是DropDownList数据显示良好,包含名称和ID值列表。
我已经看了一段时间了,所以我可能错过了一些明显的东西。我对这个问题有一个相同的问题(下拉列表不绑定到该行中显示的用户,直到我单击下拉列表来展开它),但是我认为我的模型和字段是正确的,所以我不确定为什么我仍然不能得到下拉列表正确绑定。
这是我的网格和编辑器的JS:
$(document).ready(function () {
var grid = $("#grid").kendoGrid({
dataSource: {
type: "json-ajax",
transport: {
read: {
url: myUrl,
type: "GET"
}
},
batch: true,
pageSize: 20,
schema: {
data: "Data",
total: "Total",
model: {
id: "OrderId",
fields: {
O_OrderNumber: {
editable: false
},
O_Date: {
editable: false, type: "date"
},
O_InvoiceNumber: {
editable: false
},
O_Status: {
editable: false
},
O_DueDate: {
editable: false, type: "date"
},
U_UserId: {
editable: true
},
U_Name: {
editable: false
},
O_VendorId: {
editable: false
},
O_TrackingNumber: {
editable: false
}
}
}
},
},
scrollable: false,
editable: true,
pageable: true,
columns: [
{
field: "O_OrderNumber",
title: "Order #",
hidden: false
},
{
field: "O_Date",
title: "Pull Date",
hidden: false,
type: "date",
format: "{0:MM/dd/yyyy}"
},
{
field: "O_InvoiceNumber",
title: "Invoice #",
hidden: false
},
{
field: "O_Status",
title: "Status",
hidden: false
},
{
field: "O_DueDate",
title: "Due Date",
hidden: false,
type: "date",
format: "{0:MM/dd/yyyy}"
},
{
field: "U_UserId",
title: "Owner",
hidden: false,
width: 130,
editor: ownerDropDownEditor,
template: "#=U_Name#"
},
{
field: "O_VendorId",
title: "Vendor",
hidden: false
},
{
field: "O_TrackingNumber",
title: "Tracking #",
hidden: false
}
]
}).data("kendoGrid");
});
function ownerDropDownEditor(container, options) {
$('<input required name="' + options.field + '" />')
.appendTo(container)
.kendoDropDownList({
autoBind: false,
dataTextField: "Name",
dataValueField: "UserId",
dataSource: {
type: "json",
transport: {
read: {
url: myOtherUrl,
type: "GET"
}
}
}
});
}
编辑:出于好奇,我尝试更改我的dropdown列表,使DataTextField和DataValueField都是UserId
,并且选择是立即进行的,但是显示的是ID(int)值而不是Name(string)。
因此,进一步研究我上面的编辑,我发现了这篇Telerik文章,它听起来好像下拉列表实际上是由一个对象绑定的,而不是由下拉列表值绑定的。有一个数据值原语
属性可以添加,以便按值绑定。我更新了我的编辑器,现在它的行为符合预期:
function ownerDropDownEditor(container, options) {
$('<input required name="' + options.field + '" data-value-primitive="true" />')
.appendTo(container)
.kendoDropDownList({
autoBind: false,
dataTextField: "Name",
dataValueField: "UserId",
dataSource: {
type: "json",
transport: {
read: {
url: myOtherUrl,
type: "GET"
}
}
}
});
}
我试图使用一对剑道下拉列表来过滤AngularJS中的数据集。其中一个数据源使用静态可观察数组按状态筛选数据集;另一个数据源是数据集的“区域ID”列的一组不同值,也存储为可观察数组。当状态下拉列表更改时,区域下拉列表应该从新过滤的数据中重新加载区域列表。这是可行的,但是选定的值最终会被忽略,即使应该代表选定值的模型仍然具有正确的值,并且数据仍然被相同的值正确过滤。打开下拉列表,然后单击它,使其按应
我是剑道MVC的新手,所以请耐心等待。我有以下代码来创建一个剑道MVC DropDownList For: "原始"ViewModel的Kind"属性对应于从DataSource-Read终结点接收的数据的"Code"属性。 请指教。 谢谢你,屋大维
我有剑道下拉列表,我想选择下拉列表的选择值。我得到了选定项目的文本,但不是应该是ID的值。 绑定数据与Dropdown列表剑道 使用剑道下拉列表绑定选择函数。
我想把剑道下拉列表加入我的表格。一切都会好的,除了一件事。当我想用默认的剑道创建工具栏“添加记录”时,我不能绑定从dropdownlist数据源获取的第一个值。 数据源工作正常。DropDownlist也很好用。如果我手动从dropDownlist中选择任何东西,一切正常。 我也试过了。除了“索引”之外,我试图手动从数据源中选择第一项。从视觉上看,它工作得很好。即使选择了第三项,但当我单击“更新”
我的项目中有剑道网格 其中一个圆柱,例如Naam圆柱,看起来像这样 它所做的是在弹出窗口中打开一个剑道编辑器,其中包含产品的价值。纳姆 弹出窗口有剑道编辑器、OK和Cancel按钮 这是我的网格图像。带3个点的圆圈是打开剑道编辑器的按钮 这是我的剑道编辑器弹出窗口的图片,文本已经编辑过了 到现在为止,一直都还不错。我在编辑器中获得Naam值。 当我点击OK时,我会打电话给你 它还没有完成; 这就是
我可以通过下面的模板场景将剑道下拉列表添加到剑道网格中: 然而,问题是如何访问dropdownlist以获取其值/文本/索引。到目前为止,我可以使用以下方法获取所选行数据: 这里是JSFiddle代码 请帮帮我,我卡住了。 提前感谢。