Sweetalert: Es ist nicht möglich, einen Hyperlink in der süßen Warnung hinzuzufügen

Erstellt am 27. Juni 2018  ·  4Kommentare  ·  Quelle: t4t5/sweetalert

Hallo Leute,
Dies ist mein Code, den ich verwende, um einen Hyperlink in den Text einzufügen.
swal({ title: 'This is the ', text: '<a href="http://www.externalwebsite.com" target="_blank">externalwebsite.com</a>', html: true, showCancelButton: true, allowOutsideClick: true, goToExternal: true, externalUrl: 'http://www.externalwebsite.com', confirmButtonText: "Continue" });

Aber es kommt nicht richtig raus. So kommt es

screenshot_32

Können Sie mir bitte mitteilen, wie Sie ein Anker-Tag in den süßen Alarm einfügen können.

Danke
Adi

Hilfreichster Kommentar

Sie da,

Der Grund für die Deaktivierung des html -Parameters besteht darin, Anwendungsfälle zu verhindern, in denen die Website potenziell XSS-angegriffen werden könnte.

Sie sollten jedoch immer noch in der Lage sein, rohes HTML zu rendern, indem Sie einen DOM-Knoten wie folgt an den Parameter content übergeben:

const el = document.createElement('div')
el.innerHTML = "Here's a <a href='http://google.com'>link</a>"

swal({
  title: "Hello!",
  content: el,
})

Alle 4 Kommentare

https://sweetalert.js.org/guides/#upgrading-from-1x
html wird nicht mehr verwendet. Verwenden Sie stattdessen das Inhaltsobjekt.

Hallo @SergeyW ,
Danke für deine Antwort. Ja, als ich ein bisschen darüber recherchiert habe, habe ich dasselbe erfahren.

Aber leider kann ich auch keinen Hyperlink in der Alertbox mit Inhaltsobjekt platzieren. Ich hatte nach einigen Beispielen gesucht und viele davon gefunden, aber alle drehen sich um das Hinzufügen von HTML-Formularelementen, Schaltflächen usw. und keine um Hyperlinks oder Anker-Tags.
Wenn Sie mir zeigen könnten, wie man Anker-Tags hinzufügt, oder einige ähnliche Beispiele teilen könnten, wäre das großartig.

Danke
Adi

Sie da,

Der Grund für die Deaktivierung des html -Parameters besteht darin, Anwendungsfälle zu verhindern, in denen die Website potenziell XSS-angegriffen werden könnte.

Sie sollten jedoch immer noch in der Lage sein, rohes HTML zu rendern, indem Sie einen DOM-Knoten wie folgt an den Parameter content übergeben:

const el = document.createElement('div')
el.innerHTML = "Here's a <a href='http://google.com'>link</a>"

swal({
  title: "Hello!",
  content: el,
})

Vielen Dank @t4t5

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen