urizakaです。

さて、javascriptのメッセージボックスというと警告のメッセージボックスを
表示するalertと「OK」と「キャンセル」のボタンが表示される「confirm」がありますが、これ以外で3つ以上のボタンを表示するJavascriptってありませんでしょうか?
 確かVisualBasicにはあったと思うのですが…
 すみませんが、教えてください

A 回答 (2件)

3つ以上ボタンを表示させるアラートは、ないです。



ご自分で アラートを作ってみてはいかがですか?

普通にHPを作る感覚で、
ウインドウサイズを指定して、戻るボタンとか
全てはずした状態で、ウインドウを開けば
オリジナルアラートを作れますよ。

これならボタンの数もカスタムできます。
ちなみに ウインドウのカスタムの仕方は、
以下のサイトを参考にして下さい。

参考URL:http://www.openspc2.org/reibun/javascript/sub_wi …
    • good
    • 0
この回答へのお礼

Urizakaです
返事が遅れて申し訳ありません。

…そうすかありませんか。
ちょっと自分で作ってみようかと思います。

どうもありがとうございました。

お礼日時:2001/12/21 14:41

警告を表示する alert()


「OK」「キャンセル」の confirm()
相手のメッセージを要求する prompt()

だけですね。

もし、3つのボタンのメッセージボックスを表示したい場合は、ウィンドウを開いて
その中でそれらしいものを作るしかないでしょう。
    • good
    • 0
この回答へのお礼

urizakaです

ありがとうございます。
ちょっと自分で工夫してみたいと思います。

それでは

お礼日時:2001/12/21 14:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qconfirmの「OK」ボタンと「キャンセル」ボタンの表示を変えたい

confirmだと、「OK」ボタンと「キャンセル」ボタンの表示ですが、「OK」ボタンと「NO」ボタンといったように変更することができませんか?VBのように色々変更できませんか?

Aベストアンサー

残念ながら。。。
無理だと思われます。。。

「JavaScript」のメッセージ関係はかなり少ない&制限されている。との事ですから。。。


VBのように。。。でしたら、VBScriptで代用できないか考えてみては??

参考URL:http://chaichan.hp.infoseek.co.jp/qa4000/qa4461.htm

Qボタンを押すとテキストボックスが増えるJavaScriptについて教えてください

Javascriptで質問です。
<input type="text" name="hoge1" value="">
<input type="text" name="hoge2" value="">
<input type="text" name="hoge3" value="">

というようなテキストボックスがあり、「追加」というボタンを押すと
新たなテキストボックス
<input type="text" name="hoge4" value="">
が追加されるようなJavascriptを作成したいと考えています。

新たに作られたテキストボックスには
name="hoge4"
name="hoge5"



というように、nameの部分に「hogeの右にある番号に1ずつ加算された名前」を付けていきたいのです。

検索すると、テキストボックスを追加していくだけのサンプルはいくつかあったのですが、nameの部分を加算していく、という例が無くて行き詰っています。

よろしくお願いいたします。

Aベストアンサー

innerHTMLを使えば簡単に再現できますけど…^^;
とりあえず、ここはappendChildを使うほうで。
******************************
<script type="text/javascript">
var tag_num = 4;
function myAdd(){
var oTag = document.createElement("input");
oTag.setAttribute("type", "text");
oTag.setAttribute("name", "hoge" + tag_num++);
var oDiv = document.getElementById("area");
oDiv.appendChild(oTag);
}
</script>
******************************
<span id="area">
<input type="text" name="hoge1" value="">
<input type="text" name="hoge2" value="">
<input type="text" name="hoge3" value="">
</span>
******************************

こんな感じかな?

innerHTMLを使えば簡単に再現できますけど…^^;
とりあえず、ここはappendChildを使うほうで。
******************************
<script type="text/javascript">
var tag_num = 4;
function myAdd(){
var oTag = document.createElement("input");
oTag.setAttribute("type", "text");
oTag.setAttribute("name", "hoge" + tag_num++);
var oDiv = document.getElementById("area");
oDiv.appendChild(oTag);
}
</script>
*******************...続きを読む

QJavascriptでラジオボタンとチェックボックスの値を足して計算し

Javascriptでラジオボタンとチェックボックスの値を足して計算しようとしました。
しかし、チェックボックス同士の値は足されるのですが、ラジオボタンの値は計算されずにそのまま表示されます。
ラジオボタンの値も足されるようにするにはどうしたら良いでしょうか。
よろしくお願いいたします。

javascript↓

function calc2() {
var ss="";
var fs= document.forms;
for (var f=0 ; f<fs.length ; f++) {//formが複数ある場合、formの数だけ繰り返し
d = fs[f].elements;//dにform内のエレメントを代入
checkvalue = 0;//checkvalueの値を0にする。ここをcheckvalue = ""; にすると、文字列として扱われる
for (var i = 0; i < d.length; i++ ) {//form内のエレメントの数だけ繰り返し
if (d[i].checked == true) {//チェックボックスがチェックされていたら
checkvalue += Number(d[i].value);//checkvalueの値(整数の場合)にそれぞれのエレメントの値(value)を追加していく
}
}
ss += checkvalue;
function addFigure(str) {//3桁のカンマ挿入
var num = new String(str).replace(/,/g, "");
while(num != (num = num.replace(/^(-?\d+)(\d{3})/, "$1,$2")));
return num;
}
var sss = addFigure(ss);//ssの値にカンマを挿入してsssに代入
}
document.getElementById('ch_all').innerHTML = "\\" + sss;//html本文内のid="ch_all"の場所に書き出す
}

html↓
<html>
<head>
<script type="text/javascript">

</script>
<script type='text/javascript' src='test_checked2.js'></script>
</head>
<body>
<div id="ch_all" style="background-color: #eeeeee;"></div>
<hr />
<form name="Tform1">
<input type="radio" name="test" value="34500" onclick="calc2()">
\34,500
<input type="radio" name="test" value="15000" onclick="calc2()">
\15,000
<input type="radio" name="test" value="3000" onclick="calc2()">
\3,000
<input type="radio" name="test" value="4444" onclick="calc2()">
\4,444
</form>
<form name="Tform2">
<input type="checkbox" name="test2" value="34500" onclick="calc2()">
\34,500
<input type="checkbox" name="test2" value="15000" onclick="calc2()">
\15,000
<input type="checkbox" name="test3" value="3000" onclick="calc2()">
\3,000
<input type="checkbox" name="test4" value="4444" onclick="calc2()">
\4,444
</form>
</body>
</html>

Javascriptでラジオボタンとチェックボックスの値を足して計算しようとしました。
しかし、チェックボックス同士の値は足されるのですが、ラジオボタンの値は計算されずにそのまま表示されます。
ラジオボタンの値も足されるようにするにはどうしたら良いでしょうか。
よろしくお願いいたします。

javascript↓

function calc2() {
var ss="";
var fs= document.forms;
for (var f=0 ; f<fs.length ; f++) {//formが複数ある場合、formの数だけ繰り返し
d = fs[f].elements;//dにform内のエレメントを代入
checkv...続きを読む

Aベストアンサー

チェックボックスとラジオボタンの値を合計すればよいと解釈しました。
解説は省略。(value値はカンマなしと仮定)

function calc2() {
var i = 0, f, frms = document.forms;
var j, el, total = 0, num;
while (f = frms[i++]) {
j = 0;
while (el = f.elements[j++]) {
if (el.checked && (el.type == 'radio' || el.type == 'checkbox') && !isNaN(el.value)) total += 1 * el.value;
}
}
num = total.toString();
while(num != (num = num.replace(/^(-?\d+)(\d{3})/, "$1,$2")));
document.getElementById('ch_all').innerHTML = '\\' + num;
}

QJavascriptでalertを大量のループで延々と表示されるのですが、正しい中断方法はありますか?

Javascriptでalertを大量のループで延々と表示されるのですが、正しい中断方法はありますか?
alertがモーダルになっていて、ブラウザの×ボタンが効かないです。
ブラウザはいろいろありますが、主にForeFox3とIE7を使っています。

Javascriptでalertを使わずに同じように表示させて、しかも途中で中断できる関数?ステートメント?ライブラリはありますか?

Aベストアンサー

「延々と表示される」って、ブラクラとかですか?
ご自分でjavascriptをコーディングされてるのですよね?
「正しい中断方法」ってのも無いような気もしますが・・・

>alertを使わずに同じように
>途中で中断
といったらconfirmを使うのが手っ取り早いかと思います。(ループ文中で)

if(confirm("表示内容"))break;
で、[OK][キャンセル]の付いたダイアログを表示しつつ、OKが押されれば最も内側のループを抜ける。

キャンセルが押された場合にbreakは、
if(!confirm("表示内容"))break;


毎回表示するのであれば
for(var i=0;i<10&&confirm("");i++){}
ってのが短い感じです。

Qjavascriptのconfirmについて

javascriptのconfirm命令で確認ダイアログを作成してて
OK、キャンセルのボタンがあると思いますが
初期値(カーソル)をキャンセルの方にもっていきたいんですができるんでしょうか?
本などみてもOKのほうにしかカーソルがついてないんで・・・。
よろしくお願いします。

Aベストアンサー

今日はkatu777さん
調べてみましたが、confirmにはその様な設定が有りませんので、
無理だと思います。
どうしても、キャンセルの方へ初期値を持って行きたいのであれば
ウインドをconfirmダイアログそっくりに作る等方法はあると思いますが?


人気Q&Aランキング

おすすめ情報