Dojo:Select为FilteringSelect选择空值,而required=false

Dojo:Select为FilteringSelect选择空值,而required=false,dojo,Dojo,请查看此代码: dojo.require('dijit.form.FilteringSelect'); dojo.require('dojo.store.JsonRest'); dojo.declare('JsonFilteringSelect', dijit.form.FilteringSelect, { constructor: function (options) { dojo.declare.safeMixin(this, options); i

请查看此代码:

dojo.require('dijit.form.FilteringSelect');
dojo.require('dojo.store.JsonRest');

dojo.declare('JsonFilteringSelect', dijit.form.FilteringSelect, {
    constructor: function (options) {
        dojo.declare.safeMixin(this, options);
        if (this.url) {
            this.store = new dojo.store.JsonRest({
                target: this.url
            });
        } else {
            console.log('JsonFilteringSelect: options.url is not defined');
        }
    }
});

var getPersonJsonFilteringSelect = new JsonFilteringSelect({
            url: '/person/get',
            name: 'Test',
            title: 'Test title',
            required: false,
            autoComplete:false,
            value: '',
            pageSize:10,
            queryExpr:'${0}'
        }, dojo.byId('select'));

getPersonJsonFilteringSelect.startup();
});
用例:假设我的FilteringSelect中有20个结果

用户选择FilteringSelect的1个值。 此值设置为的值 过滤选择。 但在用户决定在上更改此值之后 空值。 据我所知,因为需要:false FilteringSelect应该允许 设置空值,但不是空值。我在这里观察到这种行为: 用户单击筛选选择文本框 用户清除它 当用户按Tab键或按其他元素单击时,FilteringSelect会自动选择第一个值。
我如何允许用户在FilteringSelect中设置空值?

您应该添加一个空条目,或者可能为null?我知道,在加载数据存储之后,它会对数据存储起作用。我会将它放在小部件启动之前的开头


FilteringSelect的必需问题很奇怪,因为它不允许您选择任何任意值-它必须是数据存储中的条目。然而,如果它不是必需的,难道它不在乎吗?。。。Dojo有时很奇怪。

作为标签,作为值