Как отличить поповер по идентификатору или классу - PullRequest
1 голос
/ 06 марта 2020

Здравствуйте, у меня одна проблема, у меня два всплывающих окна, и внутри я передаю html

Вот мой код

<button class="count" data-toggle="popover">+click me</button>
<div  class="popover_content_wrapper" style="display: none">
  <p>Rahul</p>
</div>

<button class="count" data-toggle="popover">+click me</button>
<div  class="popover_content_wrapper" style="display: none">
  <p>Dravid</p>
</div>

В моей Js части

  $(function() {
    $('[data-toggle="popover"]').popover({ html : true,
        content: function() {
            return $('.popover_content_wrapper').html();
        }
    })
  })

Но если я нажимаю первую кнопку, она работает нормально и показывает всплывающее окно "Rahul"

, но если я нажимаю вторую кнопку, оно также показывает "Rahul", но я хочу это нужно показать "Дравид"

Ответы [ 2 ]

2 голосов
/ 06 марта 2020

Навигация от $ (this)

$(function() {
  $('[data-toggle="popover"]').popover({
    html: true,
    content: function() {
      return $(this).next().text(); // or .html();
    }
  })
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>


<button class="count" data-toggle="popover">+click me</button>
<div class="popover_content_wrapper" style="display: none">
  <p>Rahul</p>
</div>

<button class="count" data-toggle="popover">+click me</button>
<div class="popover_content_wrapper" style="display: none">
  <p>Dravid</p>
</div>
1 голос
/ 06 марта 2020

Просто используйте $(this).next(), как только в следующий раз div нажал button.

$(function(event) {
    $('[data-toggle="popover"]').popover({ html : true,
        content: function() {
            return $(this).next('.popover_content_wrapper').html();
            // or $(this).next().html()
        }
    })
  })
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

<button class="count" data-toggle="popover">+click me</button>
        <div  class="popover_content_wrapper" style="display: none">
             <p>Rahul</p>
         </div>

<button class="count" data-toggle="popover">+click me</button>
        <div  class="popover_content_wrapper" style="display: none">
             <p>Dravid</p>
         </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...