Dojo dijit筛选器选择禁用项单击事件
我对filteringselect做了一些改进,使其能够接受复选框输入,从而使我能够使用小部件选择多个值。Dojo dijit筛选器选择禁用项单击事件,dojo,Dojo,我对filteringselect做了一些改进,使其能够接受复选框输入,从而使我能够使用小部件选择多个值。 只有一件事我无法解决。 选择任何下拉选项时,下拉菜单关闭。 这是预期的行为,但我需要取消“closeDropDown”方法,因为其目的是选择我需要的任意多的项目。 如何实现这一点?只需覆盖自定义小部件中的closeDropDown方法,而不执行任何操作 e、 g: require([ 'dojo/_base/declare', 'dijit/popup', 'di
只有一件事我无法解决。
选择任何下拉选项时,下拉菜单关闭。
这是预期的行为,但我需要取消“closeDropDown”方法,因为其目的是选择我需要的任意多的项目。
如何实现这一点?只需覆盖自定义小部件中的closeDropDown方法,而不执行任何操作 e、 g:
require([
'dojo/_base/declare',
'dijit/popup',
'dijit/form/FilteringSelect',
'dojo/domReady!'
], function (declare, popup, FilteringSelect) {
var CustomFilteringSelect = declare([FilteringSelect], {
closeDropDown : function(/* Boolean */ focus){
console.log("Not closing");
},
postCreate : function(){
this.inherited(arguments);
this.on("blur", function(){
if(this._opened){
this._popupStateNode.setAttribute("aria-expanded", "false");
if(focus){
this.focus();
}
popup.close(this.dropDown);
this._opened = false;
}
});
}
});
var select = new CustomFilteringSelect(someprops, somenode);
select.startup();
});
例如,请参见。这有助于不关闭下拉列表,但当FilteringSelect模糊时,我需要将其关闭,因此如何告诉下拉列表仅在模糊时关闭,而不在单击时关闭?请参见我的更新回复。我只是把之前在closeDropDown中的代码放到onblur事件处理程序中…我明白了。但是我在上检查了这个解决方案,但是说“popup未定义”,我忘记了依赖项中的popup模块。再查一遍。