过滤选择-如何在Dojo中添加允许提交的空白选项“-”

7uzetpgm  于 2022-12-16  发布在  Dojo
关注(0)|答案(1)|浏览(150)

我已经尝试修复这个问题有一段时间了。我的表单中有很多Dojo过滤选择元素。我需要它们有一个默认选中的空白选项。下面是我想模拟的一个示例(正常结构):

<select>
    <option value="">-</option>
    <option value="foo">Bar</option>
</select>

目前,当我加载具有上述选项设置的筛选选择时,没有选择任何元素。这反过来会禁用表单提交。这对我的最终用户完全不可用,因为他们不知道表单为什么不工作。选择甚至不是必填字段。

fbcarpbf

fbcarpbf1#

问题在于FilteringSelect存储数据的方式,它将数据保存在一个需要标识符和标签的数据存储中,因此你不能完全模拟普通选择的功能。
您可以通过在选项中放置一个值为“XXXX”(或另一个假值)的假项目来“绕过”这个问题。

<select>
    <option value="XXXX">-</option>
    <option value="foo">Bar</option>
</select>

这种杂牌的一个缺点是,您需要更改验证函数来查找这个伪值(而不是空值)。
我设置了一个test on jsbin.com,您可以在其中看到它的运行情况。

相关问题