2013-06-04 12 views
8

アラートと確認ボックスを異なるボタンテキストでパーソナライズした多くのWebサイトがあります。デフォルトではアラートボタンをパーソナライズする方法 - window.confirm()とwindow.alert()

が、これは何であるかはJavaScript window.confirm()機能する出力:

+-----------------------------+ 
|Message from webpage   | 
+-----------------------------+ 
|Popup text     | 
|        | 
|        | 
|        | 
|        | 
| [Ok]  [Cancel]   | 
+-----------------------------+ 

しかし、私は、カスタムヘッダーテキスト、およびカスタムボタンのテキストのようないくつかのカスタマイズを望んでいた場合はどうなりますか?

+-----------------------------+ 
|My custom Header    | 
+-----------------------------+ 
|Popup text     | 
|        | 
|        | 
|        | 
|        | 
| [HELLO]  [GOODBYE]  | 
+-----------------------------+ 

JavaScript、Jquery、またはAJAX(または他の言語)でこれを達成できますか?もしそうなら、私に例を教えてもらえますか?ありがとう!

+3

Javascriptのモーダルは[悪名高く変更することができない(または不可能)](http://stackoverflow.com/questions/823790/javascript-confirm-popup-yes-no-button-instead-of-ok-and-cancel) )。あなたの最善の策はあなた自身のモーダルポップアップを作ることです。 jQuery UIを検討してください:http://jqueryui.com/dialog/ – showdev

+3

FWIW jQueryとAJAXは言語ではありません – Madbreaks

+0

これは*可能です*。あなたが有益な情報を見つけることができるこのサイトのポストのカップルがあります。例:http://stackoverflow.com/q/6929416/1505348 – Lucio

答えて

3

私はここで何か新しいものを発見しません。作成されたコメントは、最も関連性の高い情報をすべて示しています。

あなたは、サポートが大きく、カスタマイズが簡単なオープンソースの代替案を検討する必要があります。 BootBoxJS(jQueryに依存)を見てください。

このサイトでは、アラート、ダイアログ、その他の便利なツールの例を見つけることができます。例えば

confirm dialog personalized

が挙げソフトを使用するには:

  1. js library compressed(含むJS、CSSなど)
  2. 解凍し、あなたがしたいものは何でもファイルをダウンロードしてください。
  3. 次に、the example codeをコピーして貼り付けて、example.htmlなどで保存してください。
  4. ダウンロードしたファイルを指すようにリンクを変更してください(my fileの変更方法を参照)
  5. ファイルを保存し、希望するブラウザでテストしてください。

私はちょうどそれをして、それは完璧に動作します! (FirefoxとChromiumの下で)

:新しいバージョンのBootStrap(v.3)でテストしても機能しません。

+0

ちょっと@ルシオ、私は実際にこの割り当てが好きです。私はそれを動作させることはできません!いくつかのインストール手順を教えてください。 – pattyd

+0

私の更新された回答を参照してください。私は自分自身でそれをテストしました。うまくいけば、便利だろう:) – Lucio

+0

:)また、圧縮されたjsライブラリをダウンロードする場所を見つけることができません...そのリンクは、単にホームページに私をもたらします – pattyd

1

いいえ、the docsの簡単なレビューが役に立ちます。 Javaアプレットには、これまでと同じような(しかしはっきりと異なる)スタイルのUI要素があります。

ユーザエージェントのダイアログボックスのように動作するHTML/CSS/JavaScriptを使用して独自のダイアログボックスを作成することができますが、それは結果のための多くの作業です。

+0

本当ですか?私はこれを前にやったのを見ました...それはJS、JQ、AJAXのいずれかである必要はありません...他の言語は何をしますか? – pattyd

+2

あなたの質問は 'javascript'とタグ付けされています。 – Madbreaks

5

簡単な答えは、あなたがこの機能をエミュレートするためのjQueryを使用するか、または独自のモーダル/ダイアログを構築することができただしプロンプトは、

を、この機能をサポートしていない、あなたができないことです。

アイデアと例については、jQuery UI Dialo gを参照してください。

<div id="dialog-confirm" title="Empty the recycle bin?"> 
    <p><span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>These items will be permanently deleted and cannot be recovered. Are you sure?</p> 
</div> 

<p>Sed vel diam id libero <a href="http://example.com">rutrum convallis</a>. Donec aliquet leo vel magna. Phasellus rhoncus faucibus ante. Etiam bibendum, enim faucibus aliquet rhoncus, arcu felis ultricies neque, sit amet auctor elit eros a lectus.</p> 

JS

$(function() { 
    $("#dialog-confirm").dialog({ 
     resizable: false, 
     height:140, 
     modal: true, 
     buttons: { 
     "Delete all items": function() { 
      $(this).dialog("close"); 
     }, 
     Cancel: function() { 
      $(this).dialog("close"); 
     } 
     } 
    }); 
    }); 

CSSを投稿する大型のですが、あなたはこのファイルをリンクすることができます:ページからの例を設定する

jsfiddle

HTMLをチェックしてください:

http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css

+0

ありがとう!私はそれをチェックします!だから、他のウェブサイトはJavaScriptを使用していませんでしたか? – pattyd

+0

はい、それは、彼らがnaviteプロンプトを使用していなかっただけです、彼らはおそらくオーバーレイまたはモーダルを持つカスタムスクリプトを使用しました – isJustMe

+0

ああ、モーダルまたはオーバーレイの使い方を教えてください。それとももっと難しいでしょうか?ありがとう – pattyd

関連する問題