剑道自动完成默认值
Posted
技术标签:
【中文标题】剑道自动完成默认值【英文标题】:Kendo AutoComplete Default Value 【发布时间】:2015-09-20 12:30:12 【问题描述】:需要已设置的值
我正在使用 Kendo 自动完成功能从列表中选择一个项目。我需要设置文本输入字段的值并使其实际使用列表中的值。
现在我正在将输入字段的文本值设置为表中项目的值,尽管它实际上并没有使用它,就好像您要输入它并单击自动完成的项目一样。
设置默认文本:
IQueryable<StorageLocation> query = (from s in db.StorageLocations.Include("StorageLocationType") select s);
DefaultStorageLocation = query.Count() != 1 ? "" : query.FirstOrDefault().TitleWithType;
设置文本框的值:
<input type="text" value="<%: Model.DefaultStorageLocation %>" name="StorageLocation" id="StorageLocation" originalname="StorageLocation" placeholder="" class="autoComplete" style="width: 158px;" />
我的剑道自动完成:
$('#StorageLocation' + rowID).kendoAutoComplete(
dataTextField: 'title',
dataValueField: 'id',
minLength: 2,
autoBind: false,
select: function (e)
var dataItem = this.dataItem(e.item.index());
$('#StorageLocationID' + rowID).val(dataItem.id);
,
dataSource:
type: 'json',
serverFiltering: true,
transport:
read:
url: function (opt)
return '/Autocomplete/StorageLocations?searchText=' + opt.filter.filters[0].value;
);
简而言之。
我正在设置文本输入的值 需要它来实际使用该值,就好像它是从自动完成中选择的一样【问题讨论】:
【参考方案1】:当只有一个值时,您似乎正在尝试自动选择第一个值。我认为suggest
属性会满足您的需求:http://docs.telerik.com/kendo-ui/api/javascript/ui/autocomplete#configuration-suggest
或者,尝试value
方法:http://docs.telerik.com/kendo-ui/api/javascript/ui/autocomplete#methods-value
【讨论】:
我去尝试了建议。它仍然要求用户在建议其他内容之前输入一些内容。 听起来不错;看起来我读错了文档。value
方法呢?
这可以很好地填充文本,但仍然不像是从自动完成列表中选择的那样。我正在使用的验证不会将其视为自动完成列表中的值。【参考方案2】:
控制器 searchResult 搜索查询
storageLocation = (DefaultWarehouseForIA && !StorageLocation.IsNull()) ? StorageLocation.TitleWithType : "",
defaultStorageLocationID = (DefaultWarehouseForIA && DefaultStorageLocationID.ToLong() > 0) ? DefaultStorageLocationID : null
JS 值在另一个文本字段被填充时被填充。
select: function (e)
var dataItem = this.dataItem(e.item.index());
$('#StorageLocation' + rowID).val(dataItem.storageLocation);
$('#StorageLocationID' + rowID).val(dataItem.defaultStorageLocationID);
此时我已经想通了。让它工作。
所以现在在填充另一个文本字段时会自动填充该值。 这里的解释不太好。但是,嘿。
【讨论】:
以上是关于剑道自动完成默认值的主要内容,如果未能解决你的问题,请参考以下文章