使用切换后的jquery bootstrap selectpicker blur

Posted

技术标签:

【中文标题】使用切换后的jquery bootstrap selectpicker blur【英文标题】:jquery bootstrap selectpicker blur after using the toggle 【发布时间】:2020-04-12 13:29:16 【问题描述】:

我的表单中有近 15 个文本字段。每个选择调用绑定下一个选择选择器。使用切换后,我想在选择选择器输入文本字段上模糊(unfocus)。

$('#drpSubModels').selectpicker("refresh");
$('#drpSubModels').selectpicker('toggle');

我就是这样努力的;

  setTimeout(function () 
        $(".form-control").blur()
    , 1000);

但大多数情况下,它不起作用。如果我将 setTimeout 值设置为 1000 以下,它永远不会起作用。

(同时,setTimeout 不是一个好的解决方案,因为我将在移动应用程序中将此表单用作混合。当我使用切换时,每次都会调用键盘,如果模糊有效,键盘会立即显示并在屏幕上消失,如果 setTimeout 不起作用,则键盘永久出现)


onload、toggle 等没有任何机会..

$('.selectpicker').on('onload', function () 
    $(".form-control").blur();
);

有没有一种方法或方法可以在使用切换后模糊选择选择器输入文本?

;

https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js

https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/js/bootstrap-select.min.js

谢谢。

【问题讨论】:

【参考方案1】:

当我处理焦点事件时它解决了。

$(document).ready(function () 

    var blurState = false;

    $('.bs-searchbox .form-control').on('focus', function () 
        if (!blurState) 
            $(this).blur();
            blurState = true;
        
    );

    $('.selectpicker').on('hide.bs.select', function () 
        blurState = false;
    );
);

【讨论】:

以上是关于使用切换后的jquery bootstrap selectpicker blur的主要内容,如果未能解决你的问题,请参考以下文章

标签页(tab)切换的原生js,jquery和bootstrap实现

Laravel 导航栏切换在 bootstrap 4.4.1 和 jquery 3.3 上不起作用

angular2 + bootstrap +jquery 实例

关于Bootstrap 利用radio实现tab切换的一个问题

Bootstrap 3 + backbonejs - 切换导航无法打开

Bootstrap / jQuery:在导航栏中滑动“活动”状态