【发布时间】:2016-08-12 19:12:28
【问题描述】:
场景:我们有一个剑道 UI 模板。当用户尝试输入至少 2 个章程时,自动完成小部件中会填充数据。我不能使用组合框,因为返回数据可能很大并且组合框会冻结。我想强制用户从自动完成下拉列表中选择一个选项,如果自动完成没有返回任何内容,或者如果用户没有选择我想清除文本字段的数据。我的代码的问题是每次它清除第一行中的模板而不是未选择数据的相关模板。 模板声明
<script id="newTestTemplate" type="text/x-kendo-template">
<div id="testRec">
<input id="pSearchId" class="pSearch"
data-role="autocomplete"
data-placeholder="Select from dropdown"
data-text-field="name"
type="text"
data-bind="source: pSearchDS, value: name, events: {select: pSelected,open : pOpen,close : pClose}"
data-min-length="2"
data-highlight-first="true" maxlength="160" />
<input id="pDesc" data-role="textbox" placeholder="Description" class="k-textbox part-input" data-bind="value: description/> </div>
Javascript:
pOpen = function (e) {
valid = false;
}
pClose = function (e) {
if (!valid) {
$(e.sender).closest(".pSearch").val("");
$("#pDesc").val(''); //tried this way too
}
}
pSelected = function (e) {
valid = true;
}
请建议。如果还有其他方法可以强制实施选择,请告诉我。
【问题讨论】:
标签: javascript jquery asp.net-mvc html kendo-ui