Wie füge ich einen Link zu einer Webseite in ein JScript-Warndialogfeld ein?
-
09-06-2019 - |
Frage
Ich möchte in einem Warndialogfeld einen Link zu einer Webseite einfügen, damit ich eine detailliertere Beschreibung zur Behebung des Fehlers geben kann, der zur Erstellung des Dialogfelds führt.
Wie kann ich dafür sorgen, dass im Dialogfeld etwa Folgendes angezeigt wird:
There was an error. Go to this page to fix it.
wwww.TheWebPageToFix.com
Danke.
Lösung
Sie könnten versuchen, sie zu fragen, ob sie über window.prompt besuchen wollen:
if(window.prompt('Do you wish to visit the following website?','http://www.google.ca'))
location.href='http://www.google.ca/';
Außerdem unterstützt Internet Explorer modale Dialoge, so dass Sie könnten versuchen, eine von denen zeigen:
if (window.showModalDialog)
window.showModalDialog("mypage.html","popup","dialogWidth:255px;dialogHeight:250px");
else
window.open("mypage.html","name","height=255,width=250,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,modal=yes");
Andere Tipps
Sie können nicht. Alertbox nicht unterstützen html. Sie sollten die Fehler als Teil der Seite angezeigt werden, es ist schöner als JS Warnungen sowieso.
Sie können nicht - aber hier sind einige Optionen:
-
window.open()
- machen Sie Ihren eigenen Dialog - Verwenden Sie
prompt()
und anweisen, den Benutzer die URL zu kopieren - Verwenden Sie JavaScript, um nur navigieren sie direkt auf die URL (vielleicht nach
confirm()
, sie zu fragen) - Fügen Sie eine
div
auf Ihrer Seite mit einem [FIX IT] Taste und sichtbar macht es - Verwenden Sie JavaScript ein Update um es in die Benutzer-Zwischenablage URL (nicht empfohlen)
Wenn Sie wirklich wollte, könnte Sie das Standardverhalten der alert()
Funktion außer Kraft setzen. Nicht sagen Sie sollte tun.
Hier ist ein Beispiel, das die YUI-Bibliothek verwendet, aber Sie müssen YUI nicht verwenden, es zu tun:
YUI-basierte Alarm-Box - ersetzen Sie Ihre hässliche Alarm JavaScript Box
oder verwenden window.open und setzen Sie den Link dort .
Auch wenn Sie könnten, alert()
Boxen sind in der Regel modal - so dass jede Seite von einem geöffnet würden in einem neuen Fenster zu öffnen. Nervig!
alert("There was an error. Got to this page to fix it.\nwww.TheWebPageToFix.com");
Das ist das Beste, was Sie von einem JavaScript alert()
tun können. Eine gute Alternative Option ist zu versuchen, und öffnen Sie ein neues kleines Fenster, das wie ein Dialog aussieht. Mit IE können Sie öffnen es modal.