人に聞けない痔の悩み、これでスッキリ >>

今日は、JavaScriptを勉強しています。
<form action="#">の「#」の意味は何を表すのでしょうか。
宜しくお願いします。

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

A 回答 (3件)

actionには動作させたいCGI等のファイル名を書くのが普通ですが、この場合は何もしません。



その代わりに、SUBMITボタンにJavaScriptが書かれていませんか?

<input type="submit" value="送信する" onClick="foo();">

こんな感じです。
この場合はJavaScriptが動作して、そこからCGIを起動させたりしている場合があります。
    • good
    • 0
この回答へのお礼

buffalomasaさん、有難う御座います。

ところで、「AAA」という写真にマウスを乗せた時に「BBB」という写真が表示されるようにしたいのですが、
どのようにプログラムを書いてやればよいのでしょうか。
色々と本を調べているのですが、なかなか見つかりません。
宜しくお願いします。

お礼日時:2007/10/31 13:22

>ところで、「AAA」という写真にマウスを乗せた時に「BBB」という写真が表示されるようにしたいのですが、


>どのようにプログラムを書いてやればよいのでしょうか。
>色々と本を調べているのですが、なかなか見つかりません。
>宜しくお願いします。

検索サイトで、『javascript ロールオーバー』と検索していただければ
見つかると思います。

javascriptのイベントハンドラ onmouseover,onmouseoutを
使って切り替える手法が多く用いられています。
    • good
    • 0

actionは遷移先のURLなんですけど、


普通は”#”という表現は使わないです。
ここで、自画面の意味です。
    • good
    • 0

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

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

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

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

Qform action="#"

"#"ってどういう意味ですか?
検索してもなかなか見つかりません。
解説の載っているページを教えてもらえませんか?

Aベストアンサー

<form action="#">は、ボタンをページの先頭にジャンプするリンクの変わりに使う場合に使用します。


<form>で、送信ボタン(<input type=submit>等)を押すと、action=""で指定したURLにジャンプします。
通常actionには実行するCGIのURL名が入りますが、単にリンクの変わりに使う事ができます。
たとえば
<form action="aaa.html">
<input type=submit value="aaaへ">
</form>
とやると、aaa.htmlへリンクするボタンができます。

actionに"#"と書く件ですが、これは<a href="#">の変わりになります。
fibre102さんは、<a name="">タグは判りますか?
アンカータグと言い、ページの任意の位置にタグを置いておくと、その場所にリンクを張れるようになります。
#はURLとアンカー名を区切る区切り記号です。
通常は<a href="aaa.html#top">や<form action="bbb.html#tail">のように書きます。
また、同じページ内なら<a href="#tag">のようにURLを省略して書くこともできます。
で、#だけ書くとどうなるかと言うと、大抵のブラウザはページの先頭にジャンプしてくれます。
(定義されていないアンカー名に対しリンクを書くと、先頭に行くようになっているため…かな?
 最初の行に<a name="top">等と書いて、"#top"にリンクする手もありますが、余白等が入り数ドット下にずれてしまいます。)

ご質問の件は、以上二つの機能の複合です。
それぞれformとa nameタグの説明を検索してみると良いと思いますよ。

http://www.tohoho-web.com/html/form.htm
http://www.tohoho-web.com/html/a.htm

<form action="#">は、ボタンをページの先頭にジャンプするリンクの変わりに使う場合に使用します。


<form>で、送信ボタン(<input type=submit>等)を押すと、action=""で指定したURLにジャンプします。
通常actionには実行するCGIのURL名が入りますが、単にリンクの変わりに使う事ができます。
たとえば
<form action="aaa.html">
<input type=submit value="aaaへ">
</form>
とやると、aaa.htmlへリンクするボタンができます。

actionに"#"と書く件ですが、これは<a href="#">の変わりになります...続きを読む

Qsubmitとは?

超初心者レベルな質問なんですが、「submit」とはどういう意味でしょうか?
いろいろ調べたのですが、当たり前のように「サブミット」という言葉が使われていて、正確な意味がわかりません。
どうも、画面遷移とかイベント発生時に情報を送るというような感じなのかな?と思っているのですが、正しくは、どういう時に使用するものなんでしょうか。

Aベストアンサー

Javaというより、HTML、JavaScriptの言葉になります。
HTMLのformタグの内容をサーバに送信するボタンや送信する動作のことを言います。

最近、Javaを使用する場合は、Servletを使用したWebアプリを作る場合がほとんどなので、HTMLの内容がJavaのプログラムや参考書にでてきているんだと思います。

QonClickで関数呼出し後に、結果に応じてsubmitを実行する方法

JavaScriptで、
function func() {
 if (a==0) {
  alert("処理しない");
  return false;
 }
 return true;
}
と、a=0ならfalseを返し、それ以外ならtrueを返す関数を定義しています。

そして、FORMタグで
<FORM NAME="FormName" ACTION="next.html">
<INPUT TYPE="button" VALUE="next" NAME="button1" onClick="return func();submit();">
</FORM>
と記述しています。
要は、ボタンを押下した際にfunc関数がtrueを返せば、next.htmlに
遷移させたいのですが、上記記述では、遷移しません・・・
onClick部分にonClick="return func(),submit();"と記述した場合、
func関数の実行結果がtrueでもfalseでも遷移してしまいます。
そこで、なんとなくonClick="return func()&&submit();"と記述してみたところ、
func関数がtrueの時のみうまく遷移するようになりました。

これは偶然そう動作しているのでしょうか、それとも上記は正しい記述方法なのでしょうか?
正しい記述方法ならいいのですが、上記以外に正式な記述方法があれば
教えていただけないでしょうか?

※TYPE="submit"にすればいいとは思うのですが、buttonで実現したいと
考えております。

JavaScriptで、
function func() {
 if (a==0) {
  alert("処理しない");
  return false;
 }
 return true;
}
と、a=0ならfalseを返し、それ以外ならtrueを返す関数を定義しています。

そして、FORMタグで
<FORM NAME="FormName" ACTION="next.html">
<INPUT TYPE="button" VALUE="next" NAME="button1" onClick="return func();submit();">
</FORM>
と記述しています。
要は、ボタンを押下した際にfunc関数がtrueを返せば、next.htmlに
遷移させたいのですが、上記記述では、遷移しませ...続きを読む

Aベストアンサー

3つのパターンをみる限り、理由は以下の通りと思います。
1.セミコロン(;)で区切った場合、
この場合、「return func();」と「submit();」とは別の文です。returnはその時点の値を戻して、それ以降の動作を打ち切ってしまいます。よって、onClickイベントはfuncメソッドの戻り値(true/false関係なく)を戻して、そこで終了、それ以降のsubmitは実行しないとなります。

2.カンマ(,)で区切った場合、
この場合、「return func(),submit();」が1つの文となります。この「,」は、左右の式を評価して、右式を結果とする演算子です。よって、funcメソッド、submitメソッド両方を評価するため、funcメソッドの戻り値に関係なく、submitされます。

3.&&で区切った場合、
論理演算子「&&」は、左右ともにtrue(0以外)の場合のみtrueとする演算子です。また、2項論理演算子は左式から評価し、左式だけで全体の結果がわかる場合、右式を評価しません。よって、funcメソッドがfalseを戻した場合、その時点でsubmitを評価しなくても演算結果は必ずfalseとなるのでそこで打ち切られ、trueを戻した場合、submitを評価しないと演算結果を得られないため、遷移したわけです。「&&」を「||(論理和)」に変更すると逆の結果得たと思います。

さて、では3の「&&」が正しいかと言われたら、文法上は正しいです。ただし、他人がみてわかるとは思えません。
そこで、以下の記述はいかがでしょう。読んでみてソースを理解できますか。


<FORM NAME="FormName" ACTION="next.html">
<INPUT TYPE="button" VALUE="next" NAME="button1" onClick="func()">
</FORM>

(中略)

// funcの定義
function func() {
 if (a==0) {
  alert("処理しない");
  return ;
 }
 document.FormName.submit();
}

要は、ボタンを押されたら、funcを呼び出せ。
funcでは、aが0ならば、そこで終了しろ。
そうでなければ、documentオブジェクト内のFormNameと言う名前のオブジェクトのsubmitメソッドを呼べ。
です。

3つのパターンをみる限り、理由は以下の通りと思います。
1.セミコロン(;)で区切った場合、
この場合、「return func();」と「submit();」とは別の文です。returnはその時点の値を戻して、それ以降の動作を打ち切ってしまいます。よって、onClickイベントはfuncメソッドの戻り値(true/false関係なく)を戻して、そこで終了、それ以降のsubmitは実行しないとなります。

2.カンマ(,)で区切った場合、
この場合、「return func(),submit();」が1つの文となります。この「,」は、左右の式を評価して、右...続きを読む

Qjavascriptで取得した値をテキストボックスに・・・

IE5.5です。
javascriptで取得した値をテキストボックスに格納したいのですが、
うまくいきません。

<SCRIPT language="javascript">
var varVal=true
</script>

<form>
document.write("<input type='hidden' name='myVal' vaue="+varVal+">");
</form>

javascriptが初心者でよくわからないのですが、
例えば
<input type="hidden" name="myVal" value=varValに格納された値>
といった書き方もできるのでしょうか?
よろしくご教授願います。

Aベストアンサー

document.writeもJavaScriptのメソッドなので、Scriptタグで囲んでください。

<form>
<SCRIPT language="javascript">
document.write("<input type='hidden' name='myVal' vaue="+varVal+">");
</script>
</form>

多分これで上手くいくかと…。
(HTMLはよくしらないため、type='hidden'の意味はよくわからなかったので…手元に辞書もないし…
type='text'で確かめてみました→NN4.5)

あとひとつ気になった点。
var varVal=true
ですが、varは関数の中だけで使う変数を宣言するときに使います。
もしこの代入を何かの関数の中で書いていたら、document.writeのvarValとは違う変数に値を入れていることになります。
varVal=true にしてみて下さい。

ではがんばって下さい。

document.writeもJavaScriptのメソッドなので、Scriptタグで囲んでください。

<form>
<SCRIPT language="javascript">
document.write("<input type='hidden' name='myVal' vaue="+varVal+">");
</script>
</form>

多分これで上手くいくかと…。
(HTMLはよくしらないため、type='hidden'の意味はよくわからなかったので…手元に辞書もないし…
type='text'で確かめてみました→NN4.5)

あとひとつ気になった点。
var varVal=true
ですが、varは関数の中だけで使う...続きを読む

Qの意味を教えてください。

Javascriptを見ていると
<a href="#" onClick="new_open();return false">
なる記述がありますが、
この<a href="#"
の部分の意味を教えてください。
<a herf まではわかるのですが、この#はどのようないみなのでしょうか?

Aベストアンサー

href="#" というのは「そのページの最上部へのリンク」という意味で、スクロールした場所から一番上に戻したい場合に使います。
ちなみに、同ページ内への # 指定でのリンクでは、ページは読み込まれずスクロールするだけです。

<a href="#" onClick="new_open();return false">
というのは、そのリンクがクリックされた時に new_open という関数を実行し、他の処理はするな、という意味です。
return false というのが、A タグ本来のジャンプ動作をキャンセルさせるためのもので、これを取ってしまうとページ最上部にジャンプしてしまいます。

このスクリプトを書いた人は onClick だけが必要だったのでしょうが、href がないとリンクの下線が出ないなどの不都合があるため、やむなく # を書いたのでしょう。

JavaScriptの内容を実行したいだけなら、
<a href="javascript:new_open()">
と書けば十分なのですが、一部のブラウザではこのタイプのリンクをクリックすると、アニメーションGIFが止まってしまうなどの弊害があるため、嫌う人もいるようです。

また、JavaScriptが有効でない環境の人は、質問に書かれたリンクをクリックしてもページ最上部に戻されるだけで、開くべきページの内容を見ることができません。
なので、
<a href="ページのURL" target="_blank" onClick="new_open(); return false">
とするなどして、非JavaScript環境にも対応した方が親切です。

長文失礼しました。

href="#" というのは「そのページの最上部へのリンク」という意味で、スクロールした場所から一番上に戻したい場合に使います。
ちなみに、同ページ内への # 指定でのリンクでは、ページは読み込まれずスクロールするだけです。

<a href="#" onClick="new_open();return false">
というのは、そのリンクがクリックされた時に new_open という関数を実行し、他の処理はするな、という意味です。
return false というのが、A タグ本来のジャンプ動作をキャンセルさせるためのもので、これを取ってしまうとペー...続きを読む

Q「関数が定義されていない」とのエラーが出る

こんにちは,よろしくお願いします。
何が何だか分からなくて困っています。
IEでは問題なく動くのに,Firefoxだと関数が定義されていないとのエラーが出ます。「<関数名> is not defined 」

スクリプトは,外部ファイル化してあります。キータイプの間違いもありません。何度も確認しました。

function aaa(){
 (スクリプト)
}

<body onload="aaa()">
のようにして呼び出しています。
いったい,何が悪いのでしょうか?

また,Operaだと,「リンク先のスクリプトを読み込むことができません」とのエラーが出ます。
元になるPHPファイルでは,
<script type="text/javascript" language="javascript" src="../javascript/AAAAA.js"></script>
のようにして呼び出しています。
もちろん,ファイルネームのタイプミスはありません。

ちなみに,スクリプトの内容は,日付関連のコードを記述しています。
試行錯誤している時に,他の日付関連のコードを実行したときに,
dayoption is not defined
というエラーが出たことがあります。
関数が存在しているのに,定義されていないと出るのは,もしかすると,日付関連の関数等の使い間違いではないかとも考えています。
使っているものは,Date()とgetYear()です。これらのうちのどちらかがFirefoxやOperaだとサポートされていないのでしょうか?

どうか御指導ください。よろしくお願いします。

こんにちは,よろしくお願いします。
何が何だか分からなくて困っています。
IEでは問題なく動くのに,Firefoxだと関数が定義されていないとのエラーが出ます。「<関数名> is not defined 」

スクリプトは,外部ファイル化してあります。キータイプの間違いもありません。何度も確認しました。

function aaa(){
 (スクリプト)
}

<body onload="aaa()">
のようにして呼び出しています。
いったい,何が悪いのでしょうか?

また,Operaだと,「リンク先のスクリプトを読み込むことが...続きを読む

Aベストアンサー

たぶんなんらかの凡ミスでしょうけど・・・・
firefoxでだめなら、firefoxのアドオンのfirebugで検証するのが一番です

QinputタグのテキストBOXだけ右寄せにする方法

inputタグのボタンやテキストBOXが混在しているページがあります。
この中のテキストBOXだけ右寄せにしたいと思っています。

原始的なJavaSctiptは使わずに、かつID指定・class指定なしに。
シンプルにきれいに、が希望です。1つ1つ指定というのはしたくないです。

昔はJavaScriptでinputタグのものを全部持ってきて
全ループさせながらtypeを判定しテキストBOXのものだけを
どうこうするとか書きましたが、原始的なので書きたくありません。
というかもう少しスマートな書き方はないものかと思い
質問をすることにしました。


スタイルシートだけで書ければいいなと思いますがこれを知りません。
input:text {…}
みたいな書き方があればいいなと思っています。

これがダメな場合でもprototypeやjquery等のライブラリを使用し
シンプルなJavaScriptの記述で実現できればそれを知りたいです。


・原始的なJavaScriptは使わない
・id・class指定のスタイルシートは使わない
・スタイルシートだけでテキストBOXだけを右寄せにする方法
・JavaScriptライブラリを使用してテキストBOXだけを右寄せにする方法
・スタイルシート単独もJavaScriptライブラリを使用しても出来ない場合は
 「出来ない」との明言を

こんな感じでお願いします。
よろしくお願いします。

inputタグのボタンやテキストBOXが混在しているページがあります。
この中のテキストBOXだけ右寄せにしたいと思っています。

原始的なJavaSctiptは使わずに、かつID指定・class指定なしに。
シンプルにきれいに、が希望です。1つ1つ指定というのはしたくないです。

昔はJavaScriptでinputタグのものを全部持ってきて
全ループさせながらtypeを判定しテキストBOXのものだけを
どうこうするとか書きましたが、原始的なので書きたくありません。
というかもう少しスマートな書き方はないものかと思い
質...続きを読む

Aベストアンサー

はじめまして。
CSSだけで実現する方法としては属性セレクタ(Attribute selectors)と呼ばれる指定方法があります。ただしこれは、一般的なモダンブラウザでは対応しているはずですがIE6以下では反応しません。

書き方としては、
[attribute=value]

inputの1行テキストボックスだけに適応させるには、
input[type="text"] { (ここにスタイル) }

という書き方ができます。
ご参考になれば幸いです。

QHTMLファイル同士での値渡し

困っています。

HTMLファイルからHTMLファイルへ移動するときに、
HTMLファイル1でJavaScript で算出された値を
HTMLファイル2へ渡して使用したいのです。

showModalDialogだとダイアログにしか渡せないし・・・。
このように、値をそのまま次のページに渡すための方法を教えてください。
お願いします。

Aベストアンサー

すみません。うっかりしてました。

document.write(FORM[v1]);
では、v1を変数と認識してしまうので、エラーになってしまいますね。

document.write(FORM.v1);  // 「FORM.v1」です
あるいは
document.write(FORM["v1"]);
としてください。

Qform の target(

form タグに
オプションとして存在する target に関してです。

form method="POST" action="***.cgi" target="new"

と記述すればsubmit実行時に結果を別ウィンドウに転送します
ここまではいいのでが・・・・

submitボタンが複数ある場合(ボタンによって処理が違う)
ボタンによって、このボタンは新しいウィンドウを開くが、
このボタンは開かない(同一ウィンドウ内に結果表示する)
というように設定することはできますか?

CGIとJavaSCRIPTの利用は可能です。
やはり別の form を立てるしかないのでしょうか?
(cgiに渡す値が大量なため一つのformで実現したいとおもっています)

Aベストアンサー

>新しいウィンドウは target="new" を使っています。
この場合、newという名前がついたwindowが新たに開かれますよね。
もう一度newをtargetとしたページを開いた場合、さっき開いたnewウィンドウに読み込まれます。
targetにはいくつか特別な値を入れることができます。
_blank  名前未設定の「新しい」ウィンドウを開きます。10回やれば10個新しいウィンドウが開きます。
_self   自分自身のウィンドウをターゲットとします。(フレームならフレーム)
_parent  フレーム構造の場合、自分自身の一つ上のフレームセットを解除してターゲットとします
_top   フレーム構造の場合、(階層が深くても)全部解除してターゲットとします。


>☆結果
>1.両方ともに新しいウィンドウが立ちあがります。
if文が間違っています。re=1という記述は代入ですので、条件判断としては・・・。

>2.buttonのvalue値が渡されません。
type="button"は送られないようですね。buttonの名前&値がほしい場合はNo.3の方が
かかれているようにsubmitにonClickを使う形になりますか。
この場合、ブラウザにJavaScriptの動作終了を待たずにsubmitしてしまうようなバグがあったらオワリなんですが・・・動くみたいなので大丈夫でしょう。

>新しいウィンドウは target="new" を使っています。
この場合、newという名前がついたwindowが新たに開かれますよね。
もう一度newをtargetとしたページを開いた場合、さっき開いたnewウィンドウに読み込まれます。
targetにはいくつか特別な値を入れることができます。
_blank  名前未設定の「新しい」ウィンドウを開きます。10回やれば10個新しいウィンドウが開きます。
_self   自分自身のウィンドウをターゲットとします。(フレームならフレーム)
_parent  フレーム構造の場合、自分自身の一...続きを読む

Q「該当」と「当該」の違い

辞書には、「該当」・・・その条件にあてはまること。「当該」・・・その事に関係がある。
・・・とあります。
“あてはまる”と“関係がある”、微妙に違うようで似ているようで、お恥かしいのですが私にははっきり区別ができないのです。
該当とすべきところを当該としたら、意味はまったく違ってくるでしょうか?
わかりやすく両者の違いや使い方を解説していただけませんか?宜しくお願いします。

Aベストアンサー

よく似た意味の言葉(名詞)ですが、

○該当…「する」をつけて「当てはまる」という意味の動詞として用いることができる

○当該…主に他の名詞の前につけて「今議論の対象になっている、まさにそのもの」という意味で内容を限定する形容詞的な形で用いる

といった違いがあります。逆の用法はありません。

・この条件に当該する人は申し出てください。

・○○事件につき、該当被告人を有罪に処す。

いずれもおかしな使い方で、反対でないとアウトです。

ご参考になれば幸いです。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング