【问题标题】:How to make 1st item of html drop down box (select element) selectable如何使第一项 html 下拉框(选择元素)可选择
【发布时间】:2010-02-07 13:01:44
【问题描述】:

我有一个标准的 html 下拉框。

我想在用户选择一个没有单独提交按钮的项目后运行 js 代码。

当用户在选择框中选择第一个项目(实际上是之前选择的项目)时,不会触发 Onchange 事件。

即使单击了先前选择的项目,如何使组合框对单击做出反应?

注意事项: 1.我不想添加“从这里选择”或类似于选择框的内容。 2. onclick 事件没有帮助,因为它也会在用户第一次单击时触发,以便在实际选择一个选项之前打开选项。

【问题讨论】:

    标签: html events combobox


    【解决方案1】:

    我不认为这是做不到的。 onchange,正如您正确指出的那样,不起作用。 onmouseup 触发得太早了。

    我认为onblur 做到这一点,但它也会在用户通过可用元素切换时触发。

    如果您确实需要它可靠地工作,请考虑使用基于 JavaScript 的替换小部件,例如 this one。它们使您能够解决标准表单元素不幸地缺乏灵活性的问题。

    哦,顺便说一下,<select> 元素 is not a combo box,它是一个下拉菜单

    :)

    【讨论】:

      【解决方案2】:

      您可以使用 onclick 事件但同时计算点击次数。

        <script type="text/javascript">
            var count = 0;
      
            function selectClicked(sel){
                  count++;
                  if (count == 2){
                     //the user has selected something
                     //so go ahead and handle it
                     count = 0; 
                  }
            }
      
        </script>
      

      【讨论】:

        【解决方案3】:

        如果您将“onclick”事件添加到单个“option”元素而不是“select”元素会怎样?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-03-14
          • 1970-01-01
          • 2023-03-13
          • 1970-01-01
          • 1970-01-01
          • 2010-12-14
          • 1970-01-01
          • 2017-11-11
          相关资源
          最近更新 更多