javascript - Select2 从输入字段开始而不是下拉列表

标签 javascript jquery drop-down-menu input jquery-select2

我用的是js库select2 .这是我现在的截图:
开始:
enter image description here
点击下拉菜单:
enter image description here

现在可以有一个输入字段而不是直接的下拉列表吗?我知道这是可能的,因为您可以在 select2 网站上找到它。一个例子是这样的: enter image description here enter image description here

但是文档非常简短。这就是我现在拥有的:

<input type="text" name="questions[question1]" id="question1" class="question1" style="width:500px"/>
function createQuestionTags(data, question_number){
  $(".question" + question_number).select2({
    createSearchChoice: function (term, data) {
      if ($(data).filter(function () {
        return this.text.localeCompare(term) === 0;
      }).length === 0) {
        return {
          id: term,
          text: term
        };
      }
    },
    data: data,
    placeholder: "Enter Question",
    allowClear:true
  });
}

(数据是从ajax调用接收到的)

最佳答案

您在该示例中看到的实际上是一个多选或多值下拉框。它不是像您在代码中使用的那样的单值下拉框。根据 Select2 网站,select2 将检测到您正在尝试使用多选框,并将自动应用该样式而不是默认样式(下拉箭头等)。

如果您实际上需要一个单值下拉框,则没有直接的方法让它以多选格式显示,使其看起来像一个普通的输入框。可能有一种方法可以通过添加或删除 CSS 类来伪造它。我试了一下,但没找到。

因为您不需要格式、搜索框或多选功能(我假设),您可能不需要使用 select2 库。

更新:看来您不是第一个尝试这样做的人。他们计划添加此功能,但可能需要一段时间: https://github.com/ivaynberg/select2/issues/1345

关于javascript - Select2 从输入字段开始而不是下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20223044/

相关文章:

javascript - 如何动态改变html标签?

javascript - 边缘浏览器: mouseleave event triggered when changing select value

python - pyqt4中带有子菜单的下拉菜单

javascript - 如何暂停和恢复jquery间隔

javascript - Phaser.js - 将游戏变量传递给自定义对象的更新函数

javascript - 如何在 <div> 标签中显示图表十字准线值?

jquery - Select2 插件 : Showing selected options outside the form element

javascript - 如何使用 nvd3 折线图在 x 轴上显示日期

javascript - 如何通过无限滚动正确地抓取网页?

jquery - 如何在jstree中选择多个不同颜色的节点