【发布时间】:2013-10-11 06:56:58
【问题描述】:
您好,我正在使用 kendo ui 自动完成功能,但我没有在服务器包装器代码中获取 Value 字段。非常感谢任何帮助。如果有任何替代方案可以解决这个问题,请提出建议。
var comboBox = htmlHelper.Kendo().AutoComplete()
.Name(tag + propertyName)
.Value((propertyValue ?? ""))
.DataTextField("Text")
.HtmlAttributes(new { value = propertyValue })
.DataSource(source =>
{
source.Read(read =>
{
read.Action("Search", controller); //Set the Action and Controller name
})
.ServerFiltering(true);
}).HighlightFirst(true).HtmlAttributes(htmlAttributes).Enable(!enabled.HasValue ? true : enabled.Value);
//.Events(e => e.Change("function(e){ if(ComboOnChange(e)){" + onChange + "(e);} }")
//.DataBound("function(e){ " + onBind + " }")).ToHtmlString();
if(!String.IsNullOrEmpty( onChange))
{
comboBox.Events(e => e.Change("function(e){ if(ComboOnChange(e)){" + onChange + "(e);} }"));
}
if (!String.IsNullOrEmpty(onBind))
{
comboBox.Events(e => e.DataBound("function(e){ " + onBind + " }"));
}
var comboBoxData = comboBox.ToHtmlString();
comboBoxData = comboBoxData.Replace("name=\"" + tag + propertyName + "\"", "name=\"" + propertyNameId + "\"");
comboBoxData = comboBoxData.Replace("name=\"" + tag + propertyName + "-input\"", "name=\"" + propertyNameId + "\"");
【问题讨论】:
-
你是如何获得价值的?
-
请发布您的代码,我们才能发表评论。
-
我已添加代码
-
你为什么要如此粗暴地覆盖组合框的名称?目标值是什么以及为什么不依赖通过 Name() 设置它
-
实际上我正在为框架实现这个。它没有任何问题。唯一的问题是剑道自动完成没有提供 DataValue 字段。
标签: kendo-ui kendo-autocomplete