Bootstrap Popover – wie füge ich einen Link im Text-Popover hinzu?

Lesezeit: 2 Minuten

Ich verwende Bootstrap 3 Popover.

Und jetzt hätte ich gerne einen Link auf Text Popvover.

Code:

<a href="#" 
  role="button" 
  class="btn popovers" 
  data-toggle="popover" 
  title="" 
  data-content="test content <a href="" title="test add link">link on content</a>" 
  data-original-title="test title"
  >
  test link
</a>

Aber wenn ich Code in HTML starte, sehe ich:

<a href="#" role="button" class="btn popovers" data-toggle="popover" title="" data-content="test content &lt;a href=" "="">link on content</a>
" 
data-original-title="test title"
&gt;
test link

Ich kenne das Problem in Symbol " aber ich weiß nicht, ob ich einen Link im Link hinzugefügt habe …

Sag mir bitte, wie wird der richtige Code sein?

PS: Wenn die Frage bereits besteht, geben Sie mir bitte einen Link.

Benutzeravatar von Nikhil N
Nikhil N

Sie müssen bestehen html Option mit Wert true beim Initialisieren von Popover wie folgt.

Demo

JS:

$("[data-toggle=popover]")
  .popover({html:true})

HTML:

<a
  href="#" role="button" class="btn popovers" data-toggle="popover" title=""
  data-content="test content <a href="" title="test add link">link on content</a>"
  data-original-title="test title" target="_blank"
>
  test link
</a>

  • Das funktioniert, aber nicht in Kombination mit „Beim nächsten Klick verwerfen“ (=attribute data-trigger=”focus”).

    – Wouter

    13. November 2016 um 8:20 Uhr

  • Sind einfache Anführungszeichen (‘) innerhalb des Dateninhalts wichtig?

    – Naveen DA

    30. November 2016 um 10:51 Uhr

  • Ja ich glaube schon.

    – Nikhil N

    7. Dezember 2016 um 5:10 Uhr

  • Ich habe unten eine Problemumgehung für den Fall „Beim nächsten Klick schließen“ bereitgestellt.

    – Daniil Grankin

    26. März 2018 um 21:32 Uhr

Verwenden Sie einfach das Attribut data-html=”true”.

<button
  data-toggle="popover"
  data-content="Link: <a href="https://stackoverflow.com/questions/20299246/xyz.com">XYZ</a>"
  data-html="true">
  CLICK
</button>

Benutzeravatar von Daniil Grankin
Daniel Grankin

ich benutzte data-trigger="focus" und hatte ein Problem mit einem Link im Inhalt von Popover. Wenn die Maustaste auf den Link geklickt und eine Weile gedrückt gehalten wird, verschwindet das Popover und der Link „funktioniert nicht“. Einige Kunden beschwerten sich darüber.

HTML

<a href="#" role="button" class="btn popovers" data-toggle="popover" data-trigger="focus" title="" data-content="test content <a href="https://stackoverflow.com/" title="test add link">link on content</a>" data-original-title="test title">test link</a>

JS

$("[data-toggle=popover]").popover({html:true})

Sie können das Problem reproduzieren Hier.

Ich habe folgendes verwendet Code um das Problem zu beheben:

data-trigger="manual" im html- und

$("[data-toggle=popover]")
    .popover({ html: true})
        .on("focus", function () {
            $(this).popover("show");
        }).on("focusout", function () {
            var _this = this;
            if (!$(".popover:hover").length) {
                $(this).popover("hide");
            }
            else {
                $('.popover').mouseleave(function() {
                    $(_this).popover("hide");
                    $(this).off('mouseleave');
                });
            }
        });

  • Damit hast du mich gerettet! Danke schön!

    – skybondsor

    25. August 2020 um 19:46 Uhr

Benutzeravatar von Tim S
Tim S

Wenn Sie den Fokus verwenden möchten Und einen Link innerhalb des Popups, den Sie benötigen, um zu verhindern, dass das Popup geschlossen wird, wenn Sie hineinklicken. Die sauberste Lösung, die ich gefunden habe, war zu preventDefault klickt in ein Popup, das die hat .popover Klasse oder jede andere benutzerdefinierte Klasse, die Sie definieren.

$('body')
  .on('mousedown', '.popover', function(e) {
    e.preventDefault()
  });

Benutzeravatar von user7961627
Benutzer7961627

<a href="#" class="btn popovers" data-toggle="popover" title="" data-content="test content <a href="" title="test add link">link on content</a>" data-html="true"><i class="glyphicon glyphicon-info-sign"></i></a>

Durch einfaches Hinzufügen von data-html=”true” wird mit dem Linkattribut gearbeitet 🙂

Benutzeravatar von Antony
Antonius

Es ist erwähnenswert, dass, obwohl die gegebenen Antworten korrekt sind, ein Link Probleme verursacht, wenn die data-trigger="focus" wird angewandt. Wie ich herausfand von einem Kunden Wenn der Klick schnell auf ein Popover erfolgt, wird der Link ausgeführt. Sollte ein Benutzer seine Maustaste gedrückt halten, tritt leider der Trigger ein und das Popover tritt auf. Überlegen Sie also kurz, ob ein Link notwendig ist, und planen Sie langsame Klicks ein.

Davids Benutzeravatar
David

$("body").on("mousedown",".my-popover-content a",function(e){
    document.location = e.target.href;
});

tut es für mich: Im Grunde nehmen Sie die Dinge selbst in die Hand. Auch dies ist mit Popover-Optionen möglich html: true, sanitize: falseUnd trigger : "focus"

1449310cookie-checkBootstrap Popover – wie füge ich einen Link im Text-Popover hinzu?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy