Ext的ComboBox组件使用非常多,通过配置输入框可以被允许成为一个。并可以存储输入记录,记录提示的基础,然后进行再次进入,以提高的用户体验输入操作。
代码非常easy,基本操作,如以下:
// 输入提示 Ext.create("Ext.form.ComboBox", { renderTo: "放置的组件ID", name: "input", labelWidth: 40, width: 400, hideEmptyLabel: true, // 隐藏空的文本标签 hideTrigger: true, // 隐藏下拉button queryMode: "local", // 查询方式,远程或是本地 enableKeyEvents: true, // 同意键盘事件 margin: "10 0 0 0", displayField: "content", valueField: "content", store: Ext.create("Ext.data.Store", { fields: ["content"] }), inputData: [], // 保存已经输入的信息 listeners: { keydown: function(el, e) { if (e.getKey() === Ext.EventObject.ENTER) { var has = false; // 遍历已输入的内容 Ext.each(el.inputData, function(item) { // 查看输入内容是否存在 if (item.content === el.getValue()) { has = true; return false; } return true; }); if (!has) { // 保存输入内容 el.inputData.push({content: el.getValue()}); // 将输入内容载入到下拉框存储中 el.getStore().loadData(el.inputData); } } } } });
版权声明:本文博主原创文章。博客,未经同意不得转载。
时间: 2025-01-02 14:51:06