【问题标题】:jQuery Autocomplete Select Trigger EventjQuery 自动完成选择触发事件
【发布时间】:2017-02-16 02:19:03
【问题描述】:

上下文: 我正在使用 jQuery 的自动完成插件来触发它下面的显示/隐藏元素。 问题:该事件仅在输入框中输入文本时触发,而不是在从自动完成列表中选择标签时触发。

这是我的代码:

    <input name="Category" id="tags">
    <br>
    <div id="Sub_Level2">
        Sub Category
        <select name="SubCategory" required>
            <option value="1">Item 1</option>
            <option value="2">Item 2</option>
        </select>
    </div>

div #Sub_Level2 根据输入框中输入的文本显示/隐藏。

 $('input[name=Category]').keyup(function () {
        if ($(this).val() == "Green")
            $('#Sub_Level2').show();
        else
            $('#Sub_Level2').hide();
    });

这可行,但是如果从自​​动完成框中选择了标签“绿色”,则显示/隐藏不起作用。它只有在输入时才有效。

当用户单击自动完成框上的标签时,如何调整此代码以触发 #Sub_Level2 div 的显示/隐藏事件。

提前致谢。

【问题讨论】:

    标签: javascript jquery html autocomplete


    【解决方案1】:

    您需要在 jquery 自动完成选择回调函数中触发相同的 keyup 事件 .. 检查此示例 FIDDLE:https://jsfiddle.net/kameeshwaran/m96nseh4/3/

    $(document).ready(function(){
      $('input[name=Category]').keyup(function () {
            if ($(this).val() == "Green")
                $('#Sub_Level2').show();
            else
                $('#Sub_Level2').hide();
        });
    
        $( "#tags" ).autocomplete({
            select: function( event, ui ) {
              $("input[name=Category]").val(ui.item.value);
              $('input[name=Category]').keyup();
             }
        });
    });
    

    【讨论】:

    • 检查keyup事件是否正确触发
    • 创建一个小提琴并分享 zayn
    【解决方案2】:
        $(document).ready(function() {
          $("#tags").autocomplete({
            select: function(event, ui) {            
    
              if (ui.item.value == "Green")
              $('#Sub_Level2').show();
            else
              $('#Sub_Level2').hide();
            }
          });
        });
    
        $(function() {
          var availableTags = ["Green", "Blue"];
    
          $("#tags").autocomplete({
            source: availableTags
          });
        });
    

    【讨论】:

      猜你喜欢
      • 2018-10-11
      • 1970-01-01
      • 1970-01-01
      • 2011-05-13
      • 1970-01-01
      • 2011-12-05
      • 2014-11-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多