【问题标题】:HTML / jQuery selectHTML / jQuery 选择
【发布时间】:2016-12-09 09:50:00
【问题描述】:

我对@9​​87654323@ 感到困惑。

我有这个select

<select id="id_users" class="form-control" multiple="multiple" name="users">
        <option value="2">John</option>
        <option value="3">Danee</option>
        <option value="4">Panos</option>
        <option value="5">Mary</option>
</select>

默认情况下,要选择多个选项,您必须按 Ctrl 并左键单击每个选项。好的,我明白了。

我想要的是,每次我单击一个选项时,该选项都会被选中。通过选中,我的意思是我需要它保持突出显示。

我尝试了多种方法来遍历选择,但在每种情况下,我单击的最后一个都保持突出显示(即使我已将其 .attr() 更改为 .attr('selected',true),并且在我的 Firebug 控制台中,它似乎已更改为选中)。

我觉得我在这里遗漏了一些东西。

【问题讨论】:

  • 你必须尝试使用​​Multiple Select
  • 您好开发者,您可以使用 Bootstrap 进行 ez 布局和 ez 多选 formvalidation.io/examples/bootstrap-multiselect 祝您好运,如果您需要帮助,请询问我。
  • 如果我说得对,您只是想防止在单击时取消选择已选择的选项?所以'点击选项'='总是选择选项'?

标签: javascript jquery html select web-applications


【解决方案1】:

您要求做的不是多选的默认行为。

每次要修改选定的项目时,都必须使用相同的操作(Ctrl 键 + 左键单击每个选项)。如果您尝试单击单个项目,它会恢复为单个选择的原始操作,即选择单个项目

如果你愿意使用 Javascript, 您可以覆盖此行为。以下代码将有效地执行单击选择:

$("option").on("mousedown", function(e) {
    e.preventDefault();
    $(this).prop("selected", !$(this).prop("selected"));
    return false;
});

【讨论】:

    【解决方案2】:

    所以我终于选择了http://loudev.com/#home,这是一个了不起的插件!!!

    再次感谢@nisar 的建议!!!!

    【讨论】:

      【解决方案3】:

      您正在寻找多个选定的下拉菜单,请查看此处enter link description here

      $(".dropdown dt a").on('click', function() {
        $(".dropdown dd ul").slideToggle('fast');
      });
      
      $(".dropdown dd ul li a").on('click', function() {
        $(".dropdown dd ul").hide();
      });
      
      function getSelectedValue(id) {
        return $("#" + id).find("dt a span.value").html();
      }
      
      $(document).bind('click', function(e) {
        var $clicked = $(e.target);
        if (!$clicked.parents().hasClass("dropdown")) $(".dropdown dd ul").hide();
      });
      
      $('.mutliSelect input[type="checkbox"]').on('click', function() {
      
        var title = $(this).closest('.mutliSelect').find('input[type="checkbox"]').val(),
          title = $(this).val() + ",";
      
        if ($(this).is(':checked')) {
          var html = '<span title="' + title + '">' + title + '</span>';
          $('.multiSel').append(html);
          $(".hida").hide();
        } else {
          $('span[title="' + title + '"]').remove();
          var ret = $(".hida");
          $('.dropdown dt a').append(ret);
      
        }
      });
      

      其他使用多选js,multiselect js

      【讨论】:

      • 这是一个非常好的主意,但它对我不起作用。我需要它是
      猜你喜欢
      • 2012-02-08
      • 2019-01-16
      • 1970-01-01
      • 2011-06-20
      • 1970-01-01
      • 1970-01-01
      • 2012-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多