HPB5でメール送信フォームを作成しているのですが、

「送信ボタン」を押した時点で必須項目が空欄の時に
エラーメッセージが表示されるページへジャンプしたいと思っています。

要は「送信ボタン」が押されたときに必須項目に文字入力されているか
確認する記述がわかりません。

HTML言語やJavaScriptなどどれを使って良いのかもわかりません。
HTML言語やJavaScriptの知識に非常に乏しい私にできるのでしょうか。
無理なら無理と指摘してください。

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

A 回答 (2件)

こんにちは。



「○×が記入されていません」というようなメッセージを出したい、ということですね。

方法としてはJavaScriptかcgiで、ということになるでしょう。
cgiの記述としてはCかPerlが一般的です。
JavaScriptを使うなら、エラーページに飛ばすまでしなくても、エラーダイアログを出せば良いのでは??
そのようなサンプルコードはあちこちで公開されてます。
ただ、ユーザーがJavaScriptの使用をオフにしていたらエラーが出ませんが...。
cgiを使うなら、プログラムの中でテキストが空であるかないかを判別し、判別結果によってメールを送信するかエラーページを出力するか、ということになります。
これもあちこちで公開されていますが、お使いのサーバによってはcgiの設置ができない場合もあります。

少々気にかかるんですが...。
>HTML言語やJavaScriptなどどれを使って良いのかもわかりません。
ということですが、ソフトで作った「メール送信フォーム」はHTMLで作られています。
グラフィックでラベルやテキストボックスを配置しているので、記述されているHTMLが見えないだけです。
「ソースを編集する」というような機能があると思いますから、それでソースコードを見てみると良いです。

参考URL:http://tohoho.wakusei.ne.jp/www.htm
    • good
    • 0
この回答へのお礼

(旧)とほほの JavaScript 入門の「フォームの未入力をチェックする」を参考に
あくせく4時間で出来上がりました!

やっぱり、「とほほ」は役に立ちます。

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

お礼日時:2002/01/12 21:10

先の方もおしゃられておりますが、cgiやjavascript等を使用して行う事が通常の流れです。


サンプルスプリクトなども公開されていますが…
>HTML言語やJavaScriptなどどれを使って良いのかもわかりません。
>HTML言語やJavaScriptの知識に非常に乏しい私にできるのでしょうか。
と言う内容を見る限り取り入れることは中々難しいのではないかと思います。
それなりの知識が必要となる作業ですし、書物や様々なネットをご覧になり、それぞれの知識を上達させる事が望ましいのではないかと思います。
仮に、現在のフォームに不備がある内容の送信がされた場合、掲示板等にその内容を記載する方法を取るようにしてみては如何かと思います。
例えば、××さんからの問い合わせに対して返信用のメールアドレスが間違っている場合などは、掲示板に××さん返信用のメールアドレスを再度お送り下さい。
等の方法で対処されてみては如何ですか。
勿論、フォーム欄に未記載及び返信用メールの無いご質問や御注文依頼は掲示板に回答及び確認を記載してありますので、お心当たりの型は御参照下さい等の記述を載せておけば良いわけです。
残念ながら現在の貴方の見識では確認フォームの構築は難しいと思いますので、もう少し勉強されてからの方が無難と言えるのではないかと思います。
    • good
    • 0
この回答へのお礼

#1のお礼内容によりどうにか完成しました。

JavaScriptは桐の一括処理コマンドと形式が似ているので
全体像は掴めましたが完全にマスターするまでには
もっと勉強が必要なようです。

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

お礼日時:2002/01/12 21:14

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

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

QHTMLでボタンを設置して、ボタンが押されたらHTMLの内容を書き換え

HTMLでボタンを設置して、ボタンが押されたらHTMLの内容を書き換えたいのですが。
HTMLでできるのでしょうか?

いくつかのリンクがあり、それぞれ横にチェックボックスが付いています。
チェックボックスがONの場合そのリンク表示を削除したいのです。

Aベストアンサー

HTMLのみでは無理ですので、
JavaScriptの属性値生成と連想配列の組み合わせで作ってみました。
連想配列はまだ勉強不足なのであれですが。

<script type="text/javascript">
<!--
var aHrefList = new Array();
function OnOffHref(o){
//INPUTの親ノードであるPが子要素に持つAの0番目
var a = o.parentNode.getElementsByTagName("A")[0]; if(!a){return false;}
if( o.type =="checkbox"){
if( o.checked ){
//href値を配列に保存しておく
aHrefList[o.id] = a.href;
//hrefを削除
a.removeAttribute('href');
}else{
//hrefを戻す(セットする)
a.setAttribute('href',aHrefList[o.id]);
}
}
}
//-->
</script>
</head>
<body>
<form name="form1" id="form1" action="#">
<p><a href="#1">link1</a><input type="checkbox" value="link1" name="c1" id="c1" onclick="OnOffHref(this);"></p>
<p><a href="#2">link2</a><input type="checkbox" value="link2" name="c2" id="c2" onclick="OnOffHref(this);"></p>
<p><a href="#3">link3</a><input type="checkbox" value="link3" name="c3" id="c3" onclick="OnOffHref(this);"></p>
</form>

</body>
</html>


またはこうでも動きました。

<script type="text/javascript">
<!--
var aHrefList = new Array();
function OnOffHref(o,id){
//AのIDを引数として受け取ってオブジェクトを得る
var a = document.getElementById(id); if(!a){return false;}
if( o.type =="checkbox"){
if( o.checked ){
//href値を配列に保存しておく
aHrefList[a.id] = a.href;
//hrefを削除
a.removeAttribute('href');
}else{
//href値を戻す
a.setAttribute('href',aHrefList[a.id]);
}
}
}
//-->
</script>
</head>
<body>
<form name="form1" id="form1" action="#">
<p><a href="#1" id="hoge1">link1</a><input type="checkbox" value="link1" name="c1" onclick="OnOffHref(this,'hoge1');"></p>
<p><a href="#2" id="hoge2">link2</a><input type="checkbox" value="link2" name="c1" onclick="OnOffHref(this,'hoge2');"></p>
<p><a href="#3" id="hoge3">link3</a><input type="checkbox" value="link3" name="c1" onclick="OnOffHref(this,'hoge3');"></p>
</form>

</body>
</html>

HTMLのみでは無理ですので、
JavaScriptの属性値生成と連想配列の組み合わせで作ってみました。
連想配列はまだ勉強不足なのであれですが。

<script type="text/javascript">
<!--
var aHrefList = new Array();
function OnOffHref(o){
//INPUTの親ノードであるPが子要素に持つAの0番目
var a = o.parentNode.getElementsByTagName("A")[0]; if(!a){return false;}
if( o.type =="checkbox"){
if( o.checked ){
//href値を配列に保存しておく
aHrefList[o.id] = a.href;
//hrefを削除
a.removeAttribu...続きを読む

Q項目間の点線引き html/javascript

html等で、以下のような表現ができないか調べています。

AAAAAA ---------------- 123
bbbbbbbbbbbbb ---------- 45
cccccccccc ------------- 6789

左と右に項目を揃えるのはテーブルでできますが、真ん中の線をうまく引く方法がわかりません。javascriptでもphpでもhtmlでも何でも良いのですが、スマートな方法は無いでしょうか?

Aベストアンサー

No.1です。具体的な方法。
No.1でも描きましたが、何かのリストだとして。
例えば熱伝導率のリストがあったとします。
<ol class="dataList">
<li>ダイヤモンド(C)<span class="value">1000 - 2000</span></li>
<li>銀(Ag)<span class="value">420</span></li>
<li>銅(Cu)<span class="value">398</span></li>
<li>金(Au)<span class="value">320</span></li>
<li>アルミニウム(Al)<span class="value">236</span></li>
<li>シリコン(Si)<span class="value">168</span></li>
<li>真鍮<span class="value">106</span></li>
</ol>
だとして、
ol.dataList{width:300px;position:relative;border:solid 1px gray;padding:0.5em 1em;}
ol.dataList li{position:relative;width:100%;white-space:nowrap;overflow:hidden;}
ol.dataList li span.value{position:absolute;right:0;background-color:white;padding-left:1em;}
ol.dataList li:after{content:" -----------------------------";>

No.1です。具体的な方法。
No.1でも描きましたが、何かのリストだとして。
例えば熱伝導率のリストがあったとします。
<ol class="dataList">
<li>ダイヤモンド(C)<span class="value">1000 - 2000</span></li>
<li>銀(Ag)<span class="value">420</span></li>
<li>銅(Cu)<span class="value">398</span></li>
<li>金(Au)<span class="value">320</span></li>
<li>アルミニウム(Al)<span class="value">236</span></li>
<li>シリコン(Si)<span class="value">168</span></li>
<li>真鍮<span class="va...続きを読む

QHTMLやJavaScript言語でファイル操作を行えるか?

HTMLやJavaScript言語を使った事のない初心者です。
指定したファイルを開く操作や指定した動画ファイルをWebブラウザで閲覧する、などの操作をHTMLまたはJavaScript言語で行いたいのですが。可能でしょうか。可能でなければ、特に後者の、動画ファイルをWebブラウザで閲覧をしたい場合、どの言語で開発を行えば、閲覧する事が可能でしょうか。
教えて下さい。

Aベストアンサー

動画はブラウザで貼り付ければ再生可能です。
ただし、再生できる動画は入れているプラグイン次第になりますが。

http://tohoho.wakusei.ne.jp/wwwmmdia.htm

この場合HTMLで対処可能です。
<embed src="xxx.asf">
とか。

ファイルはJavascriptで扱えた気がしますが、気のせいかも。
ファイルの操作はCGIやPHPなどで扱わないと厳しいかと思います。

参考URL:http://tohoho.wakusei.ne.jp/wwwmmdia.htm

Qフォームで送信ボタンを押した際に、Javascriptに入力した値が渡

フォームで送信ボタンを押した際に、Javascriptに入力した値が渡せない

タイトルそのままです。
ボタンを押したらJavascriptでフォームの値をとりたいのです

今は、

最初に取り込ませたいJavasprictをhead内に指定しておき、
<script language="JavaScript" src="/js/mc.js" type="text/javascript"></script>

本文中のformタグではは下文のようにしてあります。
<form id="form" name="ffform" action="#" method="post">

送信用のボタンは画像で書き換えていて、ボタンを押すと、Javascriptの方で関数checkformを動かすようにしたいのです
<input type="image" src="./img/submit.png" alt="送信" onclick="checkform()">

実際に押してみても、ただ何も変化がなく、どうすればいいか困っています。どなたか教えてください
actionのところにJavascriptを指定したら、Jsそのものを開いてしまいますし、cgiを置こうにも、今あるcgiは Javasprictからさらに値を渡す為にあるcgiだけなのです・・・・・・

フォームで送信ボタンを押した際に、Javascriptに入力した値が渡せない

タイトルそのままです。
ボタンを押したらJavascriptでフォームの値をとりたいのです

今は、

最初に取り込ませたいJavasprictをhead内に指定しておき、
<script language="JavaScript" src="/js/mc.js" type="text/javascript"></script>

本文中のformタグではは下文のようにしてあります。
<form id="form" name="ffform" action="#" method="post">

送信用のボタンは画像で書き換えていて、ボタンを押すと、Javascriptの方で関数check...続きを読む

Aベストアンサー

とりあえず、/js/mc.js の内容を、alert("OK"); の1行だけにして、
画像をクリックしてOKが表示されれば、HTMLは大丈夫と言うことです。

mc.js があなたの希望通り動いてないだけ。

Q[html] タグの参照ボタンを画像ボタンにしたい。

タイトルのとおりなんですが、<input type="file">をhtmlで記述するとテキストボックスと共に参照ボタンが表示されますよね?
あの参照ボタンを画像ボタンにしたいのですが、どうしたらできるのでしょうか?それともそもそも出来ないのでしょうか?

教えてください。お願いします。

Aベストアンサー

見た目は、これでごまかせます。
機能的にも問題ないです。

> background-image :url(./image.gif);
の「./image.gif」の部分に、自分が表示したい画像のpathを指定



<html>

<head>

<style>
.fake_button
{
width : 10px;
height : 23px;
background-image :url(./image.gif);
background-repeat : no-repeat;
cursor : hand;
}
</style>

<script>
function view_path(_value){
document.all.txtfilename.value=_value;
}
</script>

</head>

<body>
<input type="file" name="uploadFile" style="display:none" onchange="view_path(this.value);">
<input type="text" name="txtfilename" size="25" disabled>
<span onclick="filupload.click();" class="fake_button">
</body>


</html>

参考URL:http://chaichan.hp.infoseek.co.jp/qa3000/qa3341.htm

見た目は、これでごまかせます。
機能的にも問題ないです。

> background-image :url(./image.gif);
の「./image.gif」の部分に、自分が表示したい画像のpathを指定



<html>

<head>

<style>
.fake_button
{
width : 10px;
height : 23px;
background-image :url(./image.gif);
background-repeat : no-repeat;
cursor : hand;
}
</style>

<script>
function view_path(_value){
document.all.txtfilename.value=_value;
}
</script>

</head>

...続きを読む


人気Q&Aランキング

おすすめ情報