我有Kendo multiSelect控制,它工作得非常好.但是我面临重置其选定值的问题.以下是我到目前为止所尝试的内容:
$("#Department option:selected").removeAttr("selected");
Run Code Online (Sandbox Code Playgroud)
和
var departmentMultiselect = $('#Department').data("kendoMultiSelect");
var subtract = $('#department').val();
var values = departmentmultiselect.value().slice();
values = $.grep(values, function (a) {
return $.inarray(a, subtract) == -1;
});
departmentmultiselect.datasource.filter({});
departmentmultiselect.value(values);
Run Code Online (Sandbox Code Playgroud)
在第二个代码中,控制绕过以下代码
values = $.grep(values, function (a) {
return $.inarray(a, subtract) == -1;
});
Run Code Online (Sandbox Code Playgroud)
如何重置此控件?
这与我最近提出的另一个问题有关.我正在尝试将用户角色信息绑定到网格,我正在为用户分配角色.每个用户可以在数据库中担任多个角色,这些角色应使用Kendo UI MultiSelect进行编辑.
当我选择所需的角色并回发给控制器时,"RoleBasicModel"对象数组包含所需数量的角色,但它们的所有属性都是空的.
模型定义为:
public class UserInfo
{
public string UserId { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string UserName { get; set; }
public string Roles { get; set; }
public IEnumerable<RoleBasicModel> RoleList { get; set; }
}
public class RoleBasicModel
{
public string Id { get; set; }
public string Text { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
网格设置为:
@(Html.Kendo().Grid<Models.UserInfo>()
.Name("userGrid")
.Columns(columns => …
Run Code Online (Sandbox Code Playgroud) 我在asp.net mvc视图上有kendo多选控件。
每当用户从控件中选择值时,它就会在两个位置上显示1.在文本框区域中,以及2.下拉列表中突出显示的项目。
我想从下拉列表中删除选定的项目,并仅在文本框区域显示。
实际上,它在以前的版本上按预期运行,但是在升级到最新版本后,它在两个地方都可见(1.在文本框区域中,并且2.在下拉列表中也突出显示。)
我了解这是最新版本中提供的其他外观更改。只是尝试查看是否有任何属性,我可以处理它以使其仅显示在文本框区域上,而不在下拉列表中突出显示。
我在将代码实现到最新的kendo版本时遇到问题(2016)
与2014年合作 - http://plnkr.co/edit/OVPTCV?p=preview
2016年的问题 - http://plnkr.co/edit/jmQrngM1oTRoeqhiQIhu?p=preview
//MultiSelect - A user extension of KendoUI DropDownList widget.
(function ($) {
// shorten references to variables
var kendo = window.kendo,
ui = kendo.ui,
DropDownList = ui.DropDownList,
keys = kendo.keys,
SELECT = "select",
SELECTIONCHANGED = "selectionChanged",
SELECTED = "k-state-selected",
HIGHLIGHTED = "k-state-active",
CHECKBOX = "custom-multiselect-check-item",
SELECTALLITEM = "custom-multiselect-selectAll-item",
MULTISELECTPOPUP = "custom-multiselect-popup",
EMPTYSELECTION = "custom-multiselect-summary-empty";
var lineTemplate = '<input type="checkbox" name="#= {1} #" value="#= {0} #" class="' + CHECKBOX + '" />' +
'<span …
Run Code Online (Sandbox Code Playgroud) 我的应用程序中有一个 Kendo Multiselect 组件,我可以在其中选择可用选项。
我的观点是这样的:
div class="editor-field col-width45">
<div>
@(Html.Kendo().MultiSelectFor(model => model.FeaturesValues)
.DataTextField("Name")
.HtmlAttributes(new { @class = "size100Percent", Id = "FeaturesSelect" })
.DataValueField("Id")
.Placeholder("Selecione...")
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetFeatures", "Role");
})
.ServerFiltering(false);
}))
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想一次选择所有选项,而不是一一选择。
我寻找一种方法来做到这一点,所有的解决方案都给我带来了这个结果:
我的代码保持这样:
div class="editor-field col-width45">
<div>
@(Html.Kendo().MultiSelectFor(model => model.FeaturesValues)
.DataTextField("Name")
.HtmlAttributes(new { @class = "size100Percent", Id = "FeaturesSelect" })
.DataValueField("Id")
.Placeholder("Selecione...")
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetFeatures", "Role");
})
.ServerFiltering(false);
}))
</div>
</br>
<div>
@(Html.Kendo().Button()
.Name("SelectAll")
.HtmlAttributes(new …
Run Code Online (Sandbox Code Playgroud) 我想将kendo multiselect限制为2项选择.我看到maxSelectedItems选项可以帮助我,但不知道在下面的标签中添加它的位置.任何帮助,将不胜感激.
<select class="k-widget multiselect" data-role="multiselect" id="CompSelect"
data-placeholder=""
data-value-primitive="true"
data-text-field="CompNameId"
data-value-field="CompId"
data-bind="value: SelectedComps,
source: CompaniesList,
events: {
change: onChange,
}">
</select>
Run Code Online (Sandbox Code Playgroud) 我正在使用kendo Multiselect,我想找到一种方法来搜索我的数据源的多个字段.这是我的实际代码.但它只适用于一个字段:
`
$scope.dataList = new kendo.data.DataSource({
data:[{id: "1",name: "Doe, John",email: "John.Doe@example.com"}],
});
$scope.customOption = {
dataSource: $scope.dataList,
dataTextField: "name",
dataValueField: "id",
filter: "contains",
itemTemplate: '<span>#=id#</span>#=name#<i> #=email#</i>',
}
`
Run Code Online (Sandbox Code Playgroud)
如您所见,我也在使用AngularJS,我尝试搜索姓名和电子邮件.
我的应用程序中有多项选择。我有一个要求,我们不应在多选下拉建议列表中显示非活动用户。我们的模型中有旗帜。因此需要知道我们可以使用该标志过滤下拉列表。请找到随附的屏幕截图以获取想法。
我们可以使用该标志过滤 ajax 调用中的数据。但需要获取已选择的非活动用户的名称。所以我试图仅从建议列表中隐藏非活动用户。
即时通讯使用mvc kendo网格,在该网格中我想使用多选.不知何故,当网格获取数据时,多重选择值未定义,但是当我按下网格中的更新按钮时,它会找到多选的正确值.
这是viewmodel我将我的网格绑定到供应商用于多选的位置
public class CustomerViewModel
{
public CustomerViewModel()
{
Suppliers = new List<SupplierViewModel>();
}
public int CustomerId { get; set; }
public string CustomerName { get; set; }
[StringLength(2, ErrorMessage = "CountryCode cannot be longer than 2 characters.")]
public string CountryCode { get; set; }
public string CustomerERPId { get; set; }
[UIHint("SupplierMultiEditor")]
public ICollection<SupplierViewModel> Suppliers { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我的网格视图:
<div>
<script type="text/kendo" id="supplierTemplate">
<ul>
#for(var i = 0; i< data.length; i++){#
<li>#:data[i].Name#</li>
#}#
</ul>
</script>
<script …
Run Code Online (Sandbox Code Playgroud) 我正在尝试向Kendo Multiselect添加更多功能,以使其表现得像普通的下拉列表。我希望它具有箭头或三角形图标,并在单击该图标时切换并关闭。我该如何实现?
kendo-ui ×8
asp.net-mvc ×3
c# ×2
javascript ×2
angularjs ×1
grid ×1
jquery ×1
kendo-grid ×1
multi-select ×1
razor ×1