4

ダイアログボックスが作成される原因となるエラーを修正する方法をより詳細に説明できるように、アラートダイアログボックスにWebページへのリンクを配置したいと思います。

ダイアログボックスに次のようなものを表示するにはどうすればよいですか。

There was an error.  Go to this page to fix it.
wwww.TheWebPageToFix.com 

ありがとう。

4

7 に答える 7

9

できません。警告ボックスはhtmlをサポートしていません。ページの一部としてエラーを表示する必要があります。とにかくJSアラートよりも優れています。

于 2008-09-11T17:55:52.490 に答える
6

本当に必要な場合は、関数のデフォルトの動作をオーバーライドできますalert()これをすべきだと言っているわけではありません。

YUI ライブラリを使用する例を次に示しますが、YUI を使用する必要はありません。

YUI ベースのアラート ボックス - 醜い JavaScript アラート ボックスを置き換えます

于 2008-09-11T18:07:05.847 に答える
6

できませんが、いくつかのオプションがあります。

  • window.open()- 独自のダイアログを作成
  • prompt()ユーザーに URL をコピーするよう指示します
  • JavaScript を使用して、URL に直接移動するだけです (おそらく、JavaScript を使用confirm()して質問した後)。
  • divページに [FIX IT] ボタンを含めて再表示する
  • JavaScript を使用して修正 URL をユーザーのクリップボードに挿入します (非推奨)。
于 2008-09-11T18:08:23.147 に答える
5

window.prompt を介してアクセスするかどうかを尋ねることができます。

if(window.prompt('Do you wish to visit the following website?','http://www.google.ca'))
  location.href='http://www.google.ca/';

また、Internet Explorer はモーダル ダイアログをサポートしているため、次のいずれかを表示してみてください。

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");
于 2008-09-11T18:40:03.130 に答える
2

または、window.openを使用して、そこにリンクを配置します。

于 2008-09-11T17:58:34.837 に答える
2

可能であっても、alert()ボックスは一般的にモーダルです。そのため、ボックスから開いたページはすべて、新しいウィンドウで開く必要があります。迷惑!

于 2008-09-11T17:58:40.080 に答える
2
alert("There was an error. Got to this page to fix it.\nwww.TheWebPageToFix.com");

これは、JavaScriptから実行できる最善の方法ですalert()。別のオプションは、ダイアログのように見える新しい小さなウィンドウを開いてみることです。IEを使用すると、モーダルで開くことができます。

于 2008-09-11T17:59:25.180 に答える