7

同様の他の質問を見て、多くの解決策を試しましたが、うまくいきませんでした。これが問題です。これはトップ バナーのミニ ログイン フォームです。フィールドをクリックしたときにボタンが自動的に閉じないようにする必要があります。これが私のコードです:

    <script> 
    $(document).on('click', '.dropdown-menu', function(e){
        $(this).hasClass('keep_open') && e.stopPropagation(); // This replace if conditional.
    });
     ​&lt;/script>                 
    <div class="btn-group" >
      <a class="btn btn-small btn-inverse dropdown-toggle" data-toggle="dropdown" href="#">
        <i class="cus-key"></i> Login
        <span class="caret"></span>
      </a>
      <ul class="dropdown-menu pull-right keep_open">
        <form action="clog.php" method="post" class="keep_open">
        <!-- dropdown menu links -->
          <li><input type="text" placeholder="Username..." class="keep_open" /></li>
          <li><input type="text" placeholder="Password..." class="keep_open"/></li>
          <li><input type="submit" name="submit" style="background-image: url('img/login.png'); width: 110px; height: 32px; cursor: hand; margin-top: -5px" value=" " /></li>
          <li><a href="/riders/register.php" ><span style="color: green; float: right" > Sign up for account<i class="icon-double-angle-right"></i></a></span></li>
         </form>
      </ul>
    </div>
4

2 に答える 2

18

私はそれを考え出した。ドキュメント準備機能内にはありませんでした。(Koala_dev へのハット ヒント) Javascript は次のようにする必要があります。

    <script type="text/javascript">

    $(document).ready(function() {
        $(document).on('click', '.dropdown-menu', function (e) {
            $(this).hasClass('keep_open') && e.stopPropagation(); // This replace if conditional.
        }); 
    });
    </script>
于 2013-08-19T06:40:07.623 に答える
3

Bootstrap 3 のドロップダウン メニュー内にネストされたアコーディオン/トグル サブメニューで同じ問題が発生していました。ソース コードからこの構文を借用して、すべての折りたたみトグルがドロップダウンを閉じないようにしました。

$(document).on(
    'click.bs.dropdown.data-api', 
    '[data-toggle="collapse"]', 
    function (e) { e.stopPropagation() }
);

[data-toggle="collapse"]別のクラスや別のデータ プロパティなど、フォームを閉じるのを止めたいものに置き換えることができます。

于 2014-06-11T20:44:54.347 に答える