Bootstrap Modal, похоже, не работает с Anchor Tag - PullRequest
0 голосов
/ 07 ноября 2018

Я использую модалы для некоторых вещей в моем HTML. Я пытался использовать его с тегом привязки, но безуспешно. Что я делаю неправильно? Вот мой код:

    <div class="logo">MAIN</div>

    <ul>

        <li>
            <a href="#" class="navy-item">3</a>
            <div class="navy-content">
                <div class="navy-sub">
                    <ul>
                        <li>
                            <a data-toggle="modal" href="#myModal">3-1</a>
                        </li>
                        <li>
                            <a href="#">3-2</a>
                              </li>

    </ul>
    <span class="close-my">&times;</span>
    <span class="close-my">&boxH;</span>
    <span class="close-my">&minus;</span>

<div class="modal fade" id="myModal" role="dialog">
        <div class="modal-dialog">

          <!-- Modal content-->

          <div class="modal-content">

            <div class="modal-header">

              <button type="button" class="close" data-dismiss="modal">&times;</button>

              <h4 class="modal-title">Modal Header</h4>
            </div>

            <div class="modal-body">

              <p>Some text in the modal.</p>

            </div>
            <div class="modal-footer">
              <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            </div>
          </div>

        </div>
      </div>

Я использую Darkly Theme для Bootstrap. Другие вещи работают, но не это. Вы можете найти тему здесь: https://bootswatch.com/darkly/

1 Ответ

0 голосов
/ 07 ноября 2018

Вам нужно добавить id, myModal к модалу, на который вы пытаетесь нацелиться:

     <a data-toggle="modal" href="#myModal">ANCHOR</a>

                                  <!-- Modal -->

      <div id="myModal" class="modal">            <!-- add id here -->
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title">Modal title</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <p>Modal body text goes here.</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-primary">Save changes</button>
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
      </div>
    </div>
  </div>
</div>

Обновление

Мое предположение заключается в том, что может быть проблема с одним из bootstrap или jQuery включений. Ваш код должен работать как есть, см. Пример ниже:

<link href="https://bootswatch.com/4/darkly/bootstrap.min.css" rel="stylesheet">

<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>

<div class="logo">MAIN</div>

<ul>

  <li>
    <a href="#" class="navy-item">3</a>
    <div class="navy-content">
      <div class="navy-sub">
        <ul>
          <li>
            <a data-toggle="modal" href="#myModal">3-1</a>
          </li>
          <li>
            <a href="#">3-2</a>
          </li>

        </ul>
        <span class="close-my">&times;</span>
        <span class="close-my">&boxH;</span>
        <span class="close-my">&minus;</span>

        <div class="modal fade" id="myModal" role="dialog">
          <div class="modal-dialog">

            <!-- Modal content-->

            <div class="modal-content">

              <div class="modal-header">

                <button type="button" class="close" data-dismiss="modal">&times;</button>

                <h4 class="modal-title">Modal Header</h4>
              </div>

              <div class="modal-body">

                <p>Some text in the modal.</p>

              </div>
              <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
              </div>
            </div>

          </div>
        </div>
...