【发布时间】:2026-01-17 08:55:02
【问题描述】:
我正在使用静态占位符文本创建一个包含批处理结果的下拉列表(使用 apiSettings.url 成员从远程源获取)。 一切工作(或多或少)都很好,直到我调用 dropdown('clear') 或 dropdown('set exactly'),它们都做了他们应该做的 - 但另外删除了我的占位符文本。这可能是理想的行为吗?我错过了什么吗?
这是一个示例下拉 HTML:
<div name="dropdown" class="ui fluid multiple search selection dropdown">
<input class="search" tabindex="0">
<div class="default text">my disappearing placeholder</div><i class="dropdown icon"></i>
<input type="hidden" name="temporary">
<div class="menu"></div>
</div>
还有一个精简的下拉初始化代码:
$('.ui.dropdown').dropdown({
fullTextSearch: true,
allowAdditions: false,
apiSettings: {
url: "<some URL returning search results for list>"
}
});
还有罪魁祸首(?):
$('.ui.dropdown').dropdown('clear');
或
$('.ui.dropdown').dropdown('set exactly', ['value1', 'value2']);
问题在此处演示:http://jsfiddle.net/11coy51r/3/
要么点击“完全设置”按钮,然后删除添加的值,要么输入任何艺术家姓名(来自 Spotify 的目录),选择它,然后点击清除。两者都会导致一个空的下拉输入框,没有以前可见的占位符。
额外问题:
我为这个问题制作了一个简单的演示非常困难(并且可以说是惨败),主要是因为“精确设置”部分。所以我想知道,我在那里遗漏了什么吗?除了在设置所选值之前手动将选择项添加到菜单之外,还有更好的方法在远程内容下拉列表中使用“完全设置”吗?
【问题讨论】:
标签: semantic-ui