空欄不可のINPUT入力領域を設定するには?

[上に] [前に] [次に]
ひろ [E-Mail] 1998/07/13(月) 11:15:25
空欄不可のFORMを設定することは出来るのでしょうか?例えば、いくつかINPUT入力領域があり、そのうち名前の欄を空欄不可に設定すれば、名前を入力しないで送信ボタンを押すと、エラーメッセージのようなものがでて、送信できないというようなものです。ご存知の方、教えてください。宜しくお願いいたします。

えへへ [E-Mail] [HomePage] 1998/07/13(月) 13:14:21
このラウンジのスクリプトの以下の部分では、SUBJECT及び、MESSAGEが空欄の時、
入力必須のページを表示して、元の入力ページに戻るようになってます。
このラウンジのスクリプトの以下の部分では、SUBJECT及び、MESSAGEが空欄の時、
入力必須のページを表示して、元の入力ページに戻るようになってます。
  #
  # 入力パラメータのチェック
  #
  if (($FORM{'SUBJECT'} eq "") || ($FORM{'MESSAGE'} eq "")) {
    print "新規サブジェクトを追加するには最低限、";
    print "<B>題名</B>と<B>内容</B>を入力してください。\n";
    print "<FORM>\n";
    print "<INPUT TYPE=button VALUE=\" 戻る \" ";
    print "onClick=\"location.href = \'wwwlng.cgi\'\">\n";
    print "</FORM>\n";
    return(undef);
  }

ひろ [E-Mail] 1998/07/13(月) 13:46:49
えへへさん、ありがとうございます。申し訳ないのですが、私の理解不足のため、具体的にえへへさんより頂いた答え
  (#
  # 入力パラメータのチェック
  #
   〜
  return(undef);} )
を、どこ(例えば、FORMのタグの前とか後とか)に入力してよいのか分かりません・・・たびたび申し訳ありませんが、HTMLでどこにどのように入力したらよいか教えていただけると大変ありがたいです。
宜しくお願いいたします。

tetsuya [E-Mail] 1998/07/13(月) 15:56:14
チェックをするのはcgiスクリプト側です。

フォームが送られる→cgi起動

これはもう避けられないということにして、
cgiのプログラム内部で
「パラメータが足りなければメール送信処理の代わりに
 エラーを吐き出して終了する」
様に組むだけです。

まる高 [E-Mail] [HomePage] 1998/07/13(月) 16:45:27
確か、<INPUT>タグには空欄入力不可のオプションはチェックはないはずですから、
JavaScriptでチェックをされたらどうでしょうか。
以下にそのサンプルを掲載します。
#
<HTML>
<HEAD>
<TITLE>サンプル</TITLE>
<SCRIPT LANGUAGE="JavaScript">
<!--
//  処理 : 入力値チェック
function CheckParameter() {
if( document.INPUT.text1.value == "" || document.INPUT.text2.value == "")
alert("入力してください。") ;
else
document.INPUT.submit() ;
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="INPUT" METHOD="post" ACTION="/cgi-bin/InputProg">
テキスト1:<INPUT TYPE="text" NAME="text1" SIZE=16><BR>
テキスト2:<INPUT TYPE="text" NAME="text2" SIZE=16><BR>
<INPUT TYPE="button" VALUE="実行" OnClick="CheckParameter()">
</FORM>
</BODY>
</HTML>

ひろ [E-Mail] 1998/07/14(火) 17:31:01
[[解決]]
ありがとうございました。JavaScriptでチェックすることができました。昨日から作成していたのですが、私の入力ミスがあり、お礼が遅れましてすみません)。本当にありがとうございました。

[上に] [前に] [次に]