剑道组合框在过滤时丢失html字段
Kendo Combobox losing html fields on filtering
我有一个剑道组合框,我之前问过这个问题。过滤工作正常,但过滤完成后,选择列表中的选项将失去其属性。有什么原因吗?请告诉我。
这是Dojo。
过滤前:
<select id="users">
<option value="1" code="user1" data-message="OK1">User 1</option>
<option value="2" code="user2" data-message="OK2">User 2</option>
<option value="3" code="user3" data-message="OK3">User 3</option>
<option value="4" code="user4" data-message="OK4">User 4</option>
</select>
过滤后:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
< select id="users" data - role="combobox" aria - disabled="false" aria - readonly="false" style="display: none;">
<option value="2">User 2</option>// lost code and data-message
<option value="3">User 3</option> // lost code and data-message
</select>
欢呼。
更新:问题是该控件已经在服务器端初始化,而我只是在客户端执行过滤。是否没有办法在不重新初始化控件的情况下执行过滤?
我可能会采取稍微不同的方法,这样做。
- 为组合框项创建模板
- 从某处加载数据(在这个例子中,我刚刚在JS中创建了一个数组。
- 创建Kendo Combobox并分配数据源和模板。
- 对数据 执行过滤
Dojo示例
<!-- Template for Combobox Items -->
<script id="template" type="text/x-kendo-template">
<span value="#: value #" code="#: code #" data-message="#: message#">#: displayText #</span>
</script>
<!-- Element to convert to Kendo Combobox -->
<div id='users'></div>
<script>
// Data for the ComboBox
var data = [{value: "1", code: "user1", message:"OK1", displayText: "User 1"},
{value: "2", code: "user2", message:"OK2", displayText: "User 2"},
{value: "3", code: "user3", message:"OK3", displayText: "User 3"},
{value: "4", code: "user4", message:"OK4", displayText: "User 4"}
]
$(document).ready(function() {
// Create the ComboBox
$('#users').kendoComboBox({
dataSource: data,
dataTextField: "displayText",
dataValueField: "value",
template: kendo.template($("#template").html())
});
//filtering
var _flt = { logic: "or", filters: [] };
_flt.filters.push({ field: 'value', operator: "contains", value: "2" });
_flt.filters.push({ field: 'value', operator: "contains", value: "3" });
$('#users').getKendoComboBox().dataSource.filter(_flt);
//select the first item
$('#users').getKendoComboBox().select(0);
});
</script>
相关文章:
- 处理HTML字段集's大小
- 编码为深度嵌套对象的 HTML 字段 json
- Javascript 单击html字段值而不编辑.js文件
- JavaScript 表单验证不适用于所有 HTML 字段
- JavaScript确认何时在表单中选择动态HTML字段
- 使用“添加用户”按钮添加HTML字段
- jquery动态添加HTML字段遇到了神秘的问题
- 如何显示和隐藏 html 字段集 以及从 Asp.Net 代码后面设置图例文本
- 在 HTML 字段中填写本地日期时间和时区名称
- 忽略链接、复选框.在可编辑的 HTML 字段中使用 jQuery
- 使用 JavaScript 进行 HTML 字段表单验证
- 如何使用 javascript 在新窗口中的 html 字段中显示值
- Javascript 为 HTML 字段赋值
- 所有 HTML 字段值的总和不起作用
- 显示 HTML 字段的 Android 软键盘,即使连接了输入设备
- javascript的新手,我将如何嵌入我的javascript文件并在HTML字段中运行它
- 为什么使用knockout.js时数据不会出现在HTML字段中
- 使用Javascript从html字段获取年龄
- 只允许HTML字段以某些单词开头
- 如何使用javascript填充HTML字段