如何解决Kendo Combobox服务器对克隆对象的过滤
我在一个隐藏的div中有一个剑道组合框,因此可以将其克隆为以下形式的中继器:
@(Html.Kendo().ComboBox()
.Name("ComboBoxTemplate")
.DataTextField("Name")
.DataValueField("ID")
.Value("InitialID")
.Filter("contains")
.MinLength(1)
.HtmlAttributes(new { style = "width:100%" })
.DataSource(source =>
{
source.Read("Combobox_Read","Combobox").ServerFiltering(true);
})
)
这在单独使用时可以按预期工作,服务器过滤在read方法中可以正常工作。但是,当我使用JQuery clone复制元素并将其提供给模板的选项时:
var newCombobox= newRow.find('#NewCombobox');
newCombobox.attr('id','someNewID');
newCombobox.attr("name",'someNewName');
var combobox = template.find('#ComboBoxTemplate').data('kendoComboBox');
if (combobox) {
var options = combobox.options;
newCombobox["kendoComboBox"](options);
}
大多数情况下都可以。 read方法有效,我可以为新的组合框选择选项。但是,服务器过滤现在在我的Controller方法上不起作用,传递给read方法的文本也没有传递。我是否错过了在克隆的Kendo Combobox上进行服务器过滤的内容?
这是我的Read方法的样子:
public ActionResult Combobox_Read(string text)
{
var values= new List<Values>();
if (text != null && text != "")
{
values= myDB.Values.Where(x => x.Name.Contains(text)).Take(10).ToList();
}
else
{
values= myDB.Values.ToList();
}
return Json(values,JsonRequestBehavior.AllowGet);
}
正如我所说,服务器过滤与原始的“隐藏”组合框一起使用,但在克隆时不起作用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。