やりたいことはリストボックスが選択されていない時に、テキストエリアに入力しようとするとメッセージを出すことです。
下記は、未完成の切り貼りです。(全然デタラメかもしれません・・)
助言をいただけると助かります。

<SCRIPT LANGUAGE=javascript>
function alert()
if (document.main.kubun.value = "↓【選択して下さい】"){
alert("先に選択すること。")
}
</SCRIPT>

<FORM NAME="main" ACTION="default.cgi" METHOD="POST">
<SELECT NAME="kubun">
<OPTION SELECTED>↓【選択して下さい】</OPTION>
<OPTION VALUE="東京">東京</OPTION>
<OPTION VALUE="大阪">大阪</OPTION>
</SELECT><BR>
<TEXTAREA NAME="TextArea" ROWS="7" COLS="73" onclick="alert()">

</TEXTAREA>
<INPUT TYPE="SUBMIT" NAME="Submit" VALUE="送信"></form>

このQ&Aに関連する最新のQ&A

A 回答 (4件)

これじゃ、動かないですね~。

(^^;;

JavaScriptのコードの間違いは下記5点です。
1.指定されているSELECTボックスの初期値が「↓【選択して下さい】」になっていません。
2.functionを囲む中カッコがありません。
3.SELECTボックスの選択値は、VALUEではとれません。selectedIndexを使用します。
4.if文の条件は"="ではなく"=="です。
5.alertはJavaScriptの予約語ですので、そのままではfunction名に使用できません。

以下、修正ソースです。

--------------------------------------------
<html>
<head>
<script language="javascript">
function checkalert() {
if (document.main.kubun[document.main.kubun.selectedIndex].value == ""){
window.alert("選択してください。");
}
}
</script>
</head>
<body>
<form name="main">
<SELECT NAME="kubun">
<OPTION VALUE="" SELECTED>↓【選択して下さい】</OPTION>
<OPTION VALUE="東京">東京</OPTION>
<OPTION VALUE="大阪">大阪</OPTION>
</SELECT>
<BR>
<TEXTAREA NAME="TextArea" ROWS="7" COLS="73" onClick="checkalert()">
</TEXTAREA>
</form>
</body>
</html>
----------------------------------------------

JavaScriptの基本をキチンと押さえる事をお薦めします。
    • good
    • 0
この回答へのお礼

皆様回答ありがとうございました。言われてみれば、以前にも指摘された内容もあったりして、基本がわかっていないと痛感いたします。ありがとうございました。

お礼日時:2001/05/07 17:15

No.2の自己フォローです。


s-holmesさんは、テキストエリアに入力しようとするとメッセージが出るようにとお考えですが、これだとテキストエリアをはじめから無視して送信ボタンを押された場合、このチェックの存在も無視されてしまいます。
ですので、「No.2」には私がよく用いる方法を記入してしまいました。
送信ボタンを押したときに、データを送信する前にデータのチェックを行うという方法です。

ちなみに、s-holmesさんのやりたい方法にするとこうなります。

<SCRIPT LANGUAGE="javascript">
function test(){
if (document.main.kubun.options[document.main.kubun.selectedIndex].value==""){
document.main.kubun.focus();
alert("先に選択すること。") ;
return false;
}
}
</SCRIPT>

<FORM NAME="main" METHOD="POST" ACTION="default.cgi">
<SELECT NAME="kubun">
<OPTION SELECTED>↓【選択して下さい】</OPTION>
<OPTION VALUE="東京">東京</OPTION>
<OPTION VALUE="大阪">大阪</OPTION>
</SELECT><BR>
<TEXTAREA NAME="TextArea" ROWS="7" COLS="73" onFocus="test()">

</TEXTAREA>
<INPUT TYPE="submit" NAME="Submit" VALUE="送信">
</form>
    • good
    • 0

関数名についてはhequliさんのおっしゃるとおりです。



スクリプト部分はこんな感じで。
<SCRIPT LANGUAGE="javascript">
function test(){
if (document.main.kubun.options[document.main.kubun.selectedIndex].value==""){
alert("先に選択すること。") ;
return false;
}
}
</SCRIPT>

フォームのタグはこんな感じで。action
<FORM NAME="main" METHOD="POST" onSubmit="return test()" ACTION="default.cgi">
<SELECT NAME="kubun">
<OPTION SELECTED>↓【選択して下さい】</OPTION>
<OPTION VALUE="東京">東京</OPTION>
<OPTION VALUE="大阪">大阪</OPTION>
</SELECT><BR>
<TEXTAREA NAME="TextArea" ROWS="7" COLS="73">

</TEXTAREA>
<INPUT TYPE="submit" NAME="Submit" VALUE="送信">
</form>

思ったように動きました、私の環境(Windows98のNN4、IE4)では。
    • good
    • 0

alertという関数名は予約語なので


違う関数名にしたほうが良いかと思います。

その辺りを考慮してこんな感じでどうでしょうか?
(ちなみに動作確認してないです^^;;)

<SCRIPT LANGUAGE=javascript><!--
function keikoku()
if( document.main.kubun.selectedIndex == 0){
alert("先に選択すること。");
}
//--></SCRIPT>

<FORM NAME="main" ACTION="default.cgi" METHOD="POST">
<SELECT NAME="kubun">
<OPTION SELECTED>↓【選択して下さい】</OPTION>
<OPTION VALUE="東京">東京</OPTION>
<OPTION VALUE="大阪">大阪</OPTION>
</SELECT><BR>
<TEXTAREA NAME="TextArea" ROWS="7" COLS="73" onFocus="keikoku();">

</TEXTAREA>
<INPUT TYPE="SUBMIT" NAME="Submit" VALUE="送信"></form>

参考まで
    • good
    • 0

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

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

Q

HTML の <FORM> の

<SELECT>
<OPTION VALUE="11">AAA</OPTION>

の<OPTION >を JavaScript で設定しようと考えています。

方法ご存知の方いらっしゃいましたら、御教授願います。

また、JavaScript のメソッド/プロパティが網羅的に記述されている Web Page 等ありましたら、ぜひURLを教えてください。


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

Aベストアンサー

> の<OPTION >を JavaScript で設定しようと考えています。

例えば、こんな感じでやります。

<form name="F">
<select name="S">
</select>
</form>

<!-- ★★★★★★ ここから -->
<script type="text/JavaScript">
S = document.X.S;
if (S.options.length < 1) {
S.options[0] = new Option("ラベル1", "値1");
S.options[1] = new Option("ラベル2", "値2");
S.options[2] = new Option("ラベル3", "値3");
history.go(0);
}
</script>
"ラベルn" が属性 label に対応し、"値n" が属性 value に対応します。

> また、JavaScript のメソッド/プロパティが網羅的に記述されている Web Page 等ありましたら、ぜひURLを教えてください。

私は、本家のページ(→参考URL)を良く見ます。

参考URL:http://developer.netscape.com/docs/manuals/communicator/jsref/index.htm

> の<OPTION >を JavaScript で設定しようと考えています。

例えば、こんな感じでやります。

<form name="F">
<select name="S">
</select>
</form>

<!-- ★★★★★★ ここから -->
<script type="text/JavaScript">
S = document.X.S;
if (S.options.length < 1) {
S.options[0] = new Option("ラベル1", "値1");
S.options[1] = new Option("ラベル2", "値2");
S.options[2] = new Option("ラベル3", "値3");
history.go(0);
}
</script>
"ラベルn" が属性 label に対応し、"値n" が属...続きを読む

QNew OPTIONで作ったタグの追加

絞り込みのボタン部分をセレクトタグにしたいのですが、
どなたかわかる方がいましたら教えてください。


<↓下記のようなセレクトタグを追加したいです>
---------------------------------------------
<select>
<option value="javascript:refresh();">全て</option>
<option value="">イヌ</option>
<option value="">ネコ</option>
<option value="">トリ</option>
</select>
---------------------------------------------


<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">google.load("jquery", "1.7");</script>
<script type="text/javascript">

$(function() {
$("#tags span").click(function() {
var tags = $(this).attr('id');
$("#tags span").removeClass('select');
$(this).addClass('select');
$("#animal div").hide();
if(tags == 'dogs') {
$("#animal .dog").show();
} else if(tags == 'cats') {
$("#animal .cat").show();
} else if(tags == 'birds') {
$("#animal .bird").show();
} else {
$("#animal div").show();
}
});
});
</script>

<div id="tags">
<span class="select"><button>全て</button></span>
<span id="dogs"><button>イヌ</button></span>
<span id="cats"><button>ネコ</button></span>
<span id="birds"><button>トリ</button></span>
</div>

<div id="animal">
<div class="cat"><img src="http://www.finefinefine.jp/wp/sample/images/cat1.jpg"/alt="写真" width="250" height="188"></div>
<div class="dog"><img src="http://www.finefinefine.jp/wp/sample/images/dog1.jpg"/alt="写真" width="250" height="188"></div>
<div class="bird"><img src="http://www.finefinefine.jp/wp/sample/images/bird1.jpg"/alt="写真" width="250" height="188"></div>
<div class="dog"><img src="http://www.finefinefine.jp/wp/sample/images/dog2.jpg"/alt="写真" width="250" height="188"></div>
<div class="bird"><img src="http://www.finefinefine.jp/wp/sample/images/bird2.jpg"/alt="写真" width="250" height="188"></div>
<div class="cat"><img src="http://www.finefinefine.jp/wp/sample/images/cat2.jpg"/alt="写真" width="250" height="188"></div>
<div class="bird"><img src="http://www.finefinefine.jp/wp/sample/images/bird3.jpg"/alt="写真" width="250" height="188"></div>
<div class="cat"><img src="http://www.finefinefine.jp/wp/sample/images/cat3.jpg"/alt="写真" width="250" height="188"></div>
<div class="dog"><img src="http://www.finefinefine.jp/wp/sample/images/dog3.jpg"/alt="写真" width="250" height="188"></div>
<div class="cat"><img src="http://www.finefinefine.jp/wp/sample/images/cat4.jpg"/alt="写真" width="250" height="188"></div>
<div class="bird"><img src="http://www.finefinefine.jp/wp/sample/images/bird4.jpg"/alt="写真" width="250" height="188"></div>
</div>

絞り込みのボタン部分をセレクトタグにしたいのですが、
どなたかわかる方がいましたら教えてください。


<↓下記のようなセレクトタグを追加したいです>
---------------------------------------------
<select>
<option value="javascript:refresh();">全て</option>
<option value="">イヌ</option>
<option value="">ネコ</option>
<option value="">トリ</option>
</select>
---------------------------------------------


<script type="text/javascript" src="http://www.google.com/...続きを読む

Aベストアンサー

こんな感じでどうぞ

$(function() {
$("#selects").change(function() {
var tags = $(this + 'option:selected').val();
$("#animal div").hide();
if(tags == 'dogs') {
$("#animal .dog").show();
} else if(tags == 'cats') {
$("#animal .cat").show();
} else if(tags == 'birds') {
$("#animal .bird").show();
} else {
$("#animal div").show();
}
});
});
</script>

<select id="selects">
<option value="all">全て</option>
<option value="dogs">イヌ</option>
<option value="cats">ネコ</option>
<option value="birds">トリ</option>
</select>

こんな感じでどうぞ

$(function() {
$("#selects").change(function() {
var tags = $(this + 'option:selected').val();
$("#animal div").hide();
if(tags == 'dogs') {
$("#animal .dog").show();
} else if(tags == 'cats') {
$("#animal .cat").show();
} else if(tags == 'birds') {
$("#animal .bird").show();
} else {
$("#animal div").show();
}
});
});
</script>

<select id="selects">
<option value="all">全て</option>
<option value="dogs">イヌ</option>
<option valu...続きを読む


人気Q&Aランキング

おすすめ情報