PHPで作成している画面について、テキストコントロールにフォーカスがある場合に、
Enterキーを押下することで、submitが行われることを無効化させたいと思っています。
<SCRIPT LANGUAGE=javascript>
<!--
document.onkeypress = enter;
function enter(){
if( window.event.keyCode == 13 ){
return false;
}
}
//-->
</SCRIPT>
のようなJavaScriptを記述すれば完全にEnterキーを無効にできるようですが、
この状態だと、submitにフォーカスがある状態でEnterキーを押下してもsubmitが実行されません。
この状態を解決する方法をご存知の方、アドバイスをお願いします!!

ちなみにブラウザは最低でも、IE6,7とFireFoxには対応したいと思っています。

当方、HTML,PHP,JavaScriptは素人同然ですので、明確な内容で教えて頂けると助かります。
宜しくお願いします!!

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

A 回答 (3件)

すみません、気になったのちょっと横槍を失礼……


「テキストコントロールのときだけ」無効ならば以下ですね。

<html>
<head>
<title>テキストがアクティブのときだけエンターきかない</title>
</head>
<body>
<form id="form1" name="form1" action="http://localhost/">
テキストA:<input type="text" name="arrowhead"><BR>
チェック:<input type="checkbox" name="delta"><BR>
テキストB:<input type="text" name="ladylove"><BR>
ラジオ:<input type="radio" name="wavemaster"><BR>
セレクト:<select name="morningglory">
<option>セレクト
</select><BR>
<input type="submit" value="サブミット"><BR>
</form>
</body>
<script type="text/javascript">
<!--
//@cc_on
document./*@if(1) attachEvent( 'on' + @else@*/ addEventListener( /*@end@*/ 'keypress', function( evt ) {
 var target = evt./*@if(1) srcElement @else@*/ target /*@end@*/;
 var keyCode = evt./*@if(1) keyCode @else@*/ which /*@end@*/;
 if( /text/i.test( target.type ) && keyCode == 13 ) {
  /*@if(1) evt.returnValue = false; @else@*/ evt.preventDefault( ); /*@end@*/
 }
}, false );
//-->
</script>
</html>

違う部分を探せば分かると思いますが、今後の学習などの参考になればと思い投稿いたしました。
    • good
    • 0
この回答へのお礼

細かい回答ありがとうございました!
無事対応できました!

お礼日時:2009/05/23 17:20

よこやりによこやり。


いとしないときに、まちがって えんた~をたたくと
とんでしまうよ~。なので・・・。ばぶ。
    • good
    • 0

<script type="text/javascript">


<!--
//@cc_on
document./*@if(1) attachEvent( 'on' + @else@*/ addEventListener( /*@end@*/ 'keypress', function( evt ) {
 var target = evt./*@if(1) srcElement @else@*/ target /*@end@*/;
 var keyCode = evt./*@if(1) keyCode @else@*/ which /*@end@*/;
 
 if( !/submit/i.test( target.type ) && keyCode == 13 ) {
  /*@if(1) evt.returnValue = false; @else@*/ evt.preventDefault( ); /*@end@*/
 }
}, false );
//-->
</script>
    • good
    • 0
この回答へのお礼

ありがとうございました!
無事対応できました!!

お礼日時:2009/05/23 17:19

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

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

このQ&Aを見た人はこんなQ&Aも見ています

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

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

Q免許証を再発行すると以前のは無効だが今までコピーされたのも無効になるの?

こんにちは。
実は先日免許証を誤って破損してしまい、再発行してもらいました。その時に「以前の免許証は無効になります」と言われました。
そこで疑問なのですが、今まで金融機関や、レンタルビデオ屋等でコピーを取られていた物も無効になり、再発行した旨を言わなければならないのでしょうか?わざわざ言う必要無いでしょうか?
(変わったのは番号だけなので)
また、このサイトで見かけたんですが「免許証のコピーを悪用される?」みたいな悪用は再発行したら出来なく(そんな目に会わない?)なるのでしょうか?

Aベストアンサー

以前の免許証は無効になります・・・
免許証は、一人で1枚しか持てないのですから、以前のものは
無効とします。そうしないと、違反した場合は、
裏面に違反のハンコを押し、1年経たないと消滅しません。
複数枚持てるなら、裏面のハンコが意味を成さないわけです。

わざわざ言う必要無いでしょうか?
その通り「必要なし」です!
なぜならば、その時点での身分確認ですから問題なしです。

悪用は再発行したら出来なく・・・そうです!
末尾0番が1番に変わるので、結果的に番号が違う事になるから、
別な免許証とみなされますね。

今度は、その免許証を大切にして下さい。

Q 内に書くことはできません」

元アルバイト先に頼まれてサイトを作り運営しているのですが、わからないことがあるので教えて下さい。

サイトはXHTML1.0 Transitional で作っており、ここに、http://fmono.sub.jp/ の「w3Analyzer」を組み込みアクセス解析をしています。サイト自体もこのアクセス解析も正常に動作しています。
ただ、このサイトをhttp://openlab.ring.gr.jp/k16/htmllint/htmllint.htmlで構文チェックすると、アクセス解析のタグにエラー「<img>を~行目の<script>~</script>内に書くことはできません。」が表示されてしまいます。
エラーが表示されるタグは下記のようなものです。

<script type="text/javascript">
document.write('<img src="http://~/w3a/writelog.php?ref='+document.referrer+'" width="1" height="1" />');
</script> >

アクセスログは普通に取得できているので問題ないのですが、もし上記エラーを回避する方法があればご教授下さい。よろしくお願いします。

元アルバイト先に頼まれてサイトを作り運営しているのですが、わからないことがあるので教えて下さい。

サイトはXHTML1.0 Transitional で作っており、ここに、http://fmono.sub.jp/ の「w3Analyzer」を組み込みアクセス解析をしています。サイト自体もこのアクセス解析も正常に動作しています。
ただ、このサイトをhttp://openlab.ring.gr.jp/k16/htmllint/htmllint.htmlで構文チェックすると、アクセス解析のタグにエラー「<img>を~行目の<script>~</script>内に書くことはできません。」が表示されてし...続きを読む

Aベストアンサー

XHTML には「ホンモノの XHTML」と「ニセモノの XHTML」があります。「ホンモノの XHTML」とは application/xml または application/xhtml+xml として識別されるもの、「ニセモノの XHTML」は text/html で識別されるものです。

※実際にはどちらも本物です。ここでは「HTML 互換として処理される XHTML」を「ニセモノ」、「XML として解析される XHTML」を「ホンモノ」と、カタカナ&カッコ付きで書いています。

「ホンモノの XHTML」として見れば、質問文のソースは妥当性違反です。なぜなら、img 要素のタグがエスケープされていないため、これがスクリプトの一部ではなく文書構成要素だと判断されるからです。XHTML 1.0 のスキーマは、script 要素内に img 要素が出現することを許していません。もちろん、スクリプトとしても正しく動作しません。

従って、XML のルールに従ってエスケープする必要があります。特に「<」と「&」は必ずエスケープしなければなりません。

document.write('&lt;img .... />');

ですが面倒なことに、「ニセモノの XHTML」ではこれが動作しなくなります。「ニセモノの XHTML」は、HTML との互換性のために script 要素内の「<」「&」をうまく扱ってくれるのですが、それが仇となり、上記では「&lt;」が「<」に戻りません。

ならば、コメント区間にするのはどうでしょう。XML でもコメント内なら「<」「&」が現れても大丈夫です(ただし「--」だけは駄目です)。

<script type="text/javascript"><!--
document.write('<img .... />');
//--></script>

「ニセモノの XHTML」ならこれでも構いません。しかし、「ホンモノの XHTML」では、コメントは本当に破棄されてしまい、上記では動作すらしなくなります。

そこで、XML/HTML のルールを使わず、JavaScript のルールでエスケープすることを考えます。

document.write('\u003Cimg .... />');

これなら大丈夫でしょう。XML/HTML に限らず、言語が混在する際は必ず適切なエスケープを施す必要があります。エスケープを避けたければ外部スクリプトにして下さい。


なお、ここには別の問題があります。そもそも「ホンモノの XHTML」では、document.write を使用できません。これは HTML 互換の機能だからです(HTML5 に明記されています)。

XHTML を採用するのであれば、それが「ホンモノ」でも「ニセモノ」でも大丈夫なよう、document.write に頼らないコードを作成して下さい。あるいは try...catch で括るなどして、「ニセモノ」として処理されたときのみコードが動作するよう工夫して下さい。あるいはいっそ、XHTML を止めるのも 1 つの選択でしょう。

XHTML には「ホンモノの XHTML」と「ニセモノの XHTML」があります。「ホンモノの XHTML」とは application/xml または application/xhtml+xml として識別されるもの、「ニセモノの XHTML」は text/html で識別されるものです。

※実際にはどちらも本物です。ここでは「HTML 互換として処理される XHTML」を「ニセモノ」、「XML として解析される XHTML」を「ホンモノ」と、カタカナ&カッコ付きで書いています。

「ホンモノの XHTML」として見れば、質問文のソースは妥当性違反です。なぜなら、img 要素のタ...続きを読む

Q青切符で逮捕されたが・・・実は無効の免許証だった

ナイジェリア人の夫は、今月はじめスピード違反で逮捕された。
持っていた国際免許証が、ジュネーブ条約に加盟していないという理由で、警察は無免許の調書を取ったが、夫は、「無免許とは免許を持たずに運転していることで、私は、国際免許と、ナイジェリア国の免許をもっている。調書に無免許と書いてある限り、サインしない。」と言って、サインを拒んだ。
警察は、翌日サインなしの調書を検察に持っていったらしいが、検事さんは、本人は、無効と知らなかったわけなので、釈放しなさい。と言ってくれて、翌日留置所を出ることが出来た。

しかし、警察の言うことには、免停と一緒で、一年間は免許センターに行っても免許を取ることができないそうです。

それ以来夫は、毎日、運転手を雇って、買い付けに行っています。

警察からは罰金の通知もなく、一月が経とうとしています。

運転手代だけでも一年間に数百万円になります。
取れるものなら、すぐにでも、日本の免許を取りに行きたいのですが、
本当に一年間は取らせてもらえないのでしょうか?

ご存知の方がいらしたら、教えてください。

他県なら、情報が行っていないはずだから、住所を移せば取れるのでは?と友人が言いました。

これもご存知の方がいらしたら、教えてください。

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

ナイジェリア人の夫は、今月はじめスピード違反で逮捕された。
持っていた国際免許証が、ジュネーブ条約に加盟していないという理由で、警察は無免許の調書を取ったが、夫は、「無免許とは免許を持たずに運転していることで、私は、国際免許と、ナイジェリア国の免許をもっている。調書に無免許と書いてある限り、サインしない。」と言って、サインを拒んだ。
警察は、翌日サインなしの調書を検察に持っていったらしいが、検事さんは、本人は、無効と知らなかったわけなので、釈放しなさい。と言ってくれて、翌...続きを読む

Aベストアンサー

>、「無免許とは免許を持たずに運転していることで、私は、国際免許と、ナイジェリア国の免許をもっている」

ご主人は、国際法及び国内法を誤って理解したのでしよう。
ジュネーブ条約・二国間条約で認められていない運転免許証は、ただの紙屑です。

>検事さんは、本人は、無効と知らなかったわけなので、釈放しなさい。と言ってくれて、翌日留置所を出ることが出来た。

たぶん、「在宅起訴」になった可能性が高いですね。
前科・犯罪(逃亡)の可能性がない人なので、釈放したのでしよう。
近いうちに、略式裁判があるので出頭命令があると思います。
罰金刑は(残念ですが)間違いありません。

>本当に一年間は取らせてもらえないのでしょうか?

残念ですが、その通りです。

>他県なら、情報が行っていないはずだから、住所を移せば取れるのでは?と友人が言いました。

それは、大昔の事です。
今の運転免許証は「全国の免許証を一箇所で管理」しています。
何処で取得しても、後々バレますよ。
もし、バレたら余計罪が重くなります。

余談ですが・・・。
>運転手代だけでも一年間に数百万円になります。
ハイヤーを使った方が、安い気がします。

>、「無免許とは免許を持たずに運転していることで、私は、国際免許と、ナイジェリア国の免許をもっている」

ご主人は、国際法及び国内法を誤って理解したのでしよう。
ジュネーブ条約・二国間条約で認められていない運転免許証は、ただの紙屑です。

>検事さんは、本人は、無効と知らなかったわけなので、釈放しなさい。と言ってくれて、翌日留置所を出ることが出来た。

たぶん、「在宅起訴」になった可能性が高いですね。
前科・犯罪(逃亡)の可能性がない人なので、釈放したのでしよう。
近いう...続きを読む

QJavaScript Enterキーを押下時『TAB』の動きを割り当てたい

教えて下さい。

Enterキーを押下時『TAB』の動きを割り当てたいのですが、おわかりになりますでしょうか?

Aベストアンサー

<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=shift_jis">
<TITLE>ヘ(・、ヘ)ホイホイ(ノ、・)ノホイホイ</TITLE>
<SCRIPT LANGUAGE=javascript>
<!--
document.onkeydown = a;
function a(){
if(event.keyCode = 13){
event.keyCode = 9;
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<P>InternetExplorer5以上です<BR>NNのやりかたは分かりません。</P>
<P></P>
<P><INPUT id=button1 type=button value=ボタン1 name=button1><INPUT id=button2 type=button value=ボタン2 name=button2><INPUT id=button3 type=button value=ボタン3 name=button3></P>
</BODY>
</HTML>

こんな感じ?

でも「ボタン3」の次のフォーカスが
「アドレスバー」になります。
こうなっちゃうと、スクリプトでキーの取得ができなくなります。

<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=shift_jis">
<TITLE>ヘ(・、ヘ)ホイホイ(ノ、・)ノホイホイ</TITLE>
<SCRIPT LANGUAGE=javascript>
<!--
document.onkeydown = a;
function a(){
if(event.keyCode = 13){
event.keyCode = 9;
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<P>InternetExplorer5以上です<BR>NNのやりかたは分かりません。</P>
<P></P>
<P><INPUT id=button1 type=button value=ボタン1 name=button1><INPUT id=button2 type=b...続きを読む

Qパスポート申請時の身分証で仮免許証は有効ですか?

運転免許証を失効してしまい、他に身分証はもってなく、
生活するうえで非常に困ってまして、身分証を作成しようとしてます。

先日、失効した免許証をもっていき、仮免許証の発行はできたのですが
法的にこの仮免許証を身分証としてパスポートの作成はできるのでしょうか?

免許センターの人に聞くと運転免許証と同じ効力なので身分証として使えると言ってまして
自分のとこ以外の地域ではパスポート申請の際の掲示が1点でよい書類に「運転免許証(国際免許証、仮免許証を含む)」といった表記もあり
仮免許証で住基カードの申請等にも使えるのですが、なぜか自分の地域の役所だけ仮免許証は無効だと言い張るんです。
役所によって違うとかそんな理由いいんでしょうか?担当者が知らないだけなんでしょうか?
法的に有効で拒否する理由にできないということはないんでしょうか?

どなたかご存知の方いらっしゃいましたらご教授いただけたらと思います。

Aベストアンサー

>担当者が知らないだけなんでしょうか?
担当者が知らないだけです。

>法的にこの仮免許証を身分証としてパスポートの作成はできるのでしょうか?
>法的に有効で拒否する理由にできないということはないんでしょうか?
一般旅券の発給を申請する者に提示又は提出を求めることができる書類は
旅券法施行規則第二条(確認の事務)
1項一「日本国旅券、別表第三に掲げる官公庁が発行した免許証(以下略)」
となっています。
そして、別表第三には「運転免許証」が掲示されています。

運転免許証とは、
道路交通法
(運転免許)第八十四条
2  免許は、第一種運転免許(以下「第一種免許」という。)、第二種運転免許(以下「第二種免許」という。)及び仮運転免許(以下「仮免許」という。)に区分する。
となっています
したがって、仮免許証も運転免許証です。

これらを担当者に申し出ても認めてもらえないようなら、
役所の担当者に都道府県の旅券事務所に確認を取るように求めてください。

QJavascriptで、フォームボタン押下(submit)せず、リンクURLを書き換える

 javascriptで、
 1.フォームのテキストボックスに入れられた値を取得し、
  例)テキストボックス入力 ; test
 2.元々記述されているリンクURLをユーザがクリックした時、
  例)元々のリンクURL ; <a href="www.google.co.jo?q= ~...
 3."1"のテキストボックス内に記述された値を取得して、"2"のURLを書き換え、
  例)テキストボックス内の文字をURLの一部に追記する ; <a href="www.google.co.jo?q=test  ~...
 4.書き換えられた後のURLにユーザを飛ばす、
 ・・・という事って出来るんでしょうか。
 上記動作内でユーザの動作は、
  テキストボックスに文字を入れる、という動作と、
  リンクをクリックする、という動作のみです。

 フォームのボタン押下後、というのであれば出来たんですが、上記の様な動作のコードが思い浮かびません・・・。PHPとかCGIではなく、Javascriptで何とか出来ないでしょうか。
 お知恵拝借、よろしくお願いします。

 javascriptで、
 1.フォームのテキストボックスに入れられた値を取得し、
  例)テキストボックス入力 ; test
 2.元々記述されているリンクURLをユーザがクリックした時、
  例)元々のリンクURL ; <a href="www.google.co.jo?q= ~...
 3."1"のテキストボックス内に記述された値を取得して、"2"のURLを書き換え、
  例)テキストボックス内の文字をURLの一部に追記する ; <a href="www.google.co.jo?q=test  ~...
 4.書き換えられた後のURLにユーザを飛ばす、
...続きを読む

Aベストアンサー

onkeyupで処理してみては?

<script>
function hoge(v){
var url="http://www.google.co.jp?q=";
document.getElementById("fuga").href=url+v;
}
</script>

<input type="text" onkeyup="hoge(this.value)">
<a href="http://www.google.co.jp?q=" id="fuga">とぶ</a>

Q免許証の住所記載

去年の夏ごろ初めて免許をとったんですが
免許証の住所記載について悩んでいます。

住民票に書いてある住所は
福岡県○○市○○町12番地
なんですが
免許証に記載している住所は
福岡県○○市○○町12
です。

免許センターで自分の住所を書くときに
「番地」を書くのを忘れてしまいました。

その事を友人に話しところ、
その免許証は無効になるのでは?と言われました。

「番地」を書いていないだけで無効になるのでしょうか?
また、無効になるのならば
もう一度免許を一から取り直す必要があるのでしょうか?

どなたか教えてください。よろしくお願いします。

Aベストアンサー

無効となることは無いですが、住民票を持って最寄の警察署の交通課へ行けば、免許証の裏へ、訂正した住所を記載してOKです。
心配するほどのことではないですよ。手続きは、簡単です。

Qテキストエリアをenterキーでフォーカス移動したい

複数あるテキストエリア間を、enterキーでフォーカス移動をしたいです。
以下のようにしましたが、2つめのテキストエリアへフォーカス移動すると、改行が入力され、カーソルが2行目へ移動してしまいます。
enterキーを押しているのでこうなってしまうと思うのですが、
カーソルが1行目へ移動するようにするには、どうしたらいいでしょうか?
フォーカス移動後に改行コードがあったら、""にreplaceする・・等、試してみたのですが、なかなか上手くいきません。
どなたかお分かりになる方がいらっしゃったら、教えてください。

<HTML>
<HEAD>
<SCRIPT language="JavaScript">
<!--
function FirstFocus() {
document.forms.F1.elements[0].focus();
}
function nextFocus(n) {
if (event.keyCode == 13) {
for (var i = 0, f = n.form.elements; i < f.length; i++) {
if (f[i] == n) {
(f[i + 1] || f[0]).focus();
}
}
}
}
//-->
</SCRIPT>
</HEAD>
<BODY onload="FirstFocus()">
<FORM name="F1">
<TEXTAREA name="T1" rows="5" cols="30" onkeydown="nextFocus(this);"></TEXTAREA><BR>
<TEXTAREA name="T2" rows="5" cols="30" onkeydown="nextFocus(this);"></TEXTAREA><BR>
<TEXTAREA name="T3" rows="5" cols="30"></TEXTAREA><BR>
</FORM>
</BODY>
</HTML>

複数あるテキストエリア間を、enterキーでフォーカス移動をしたいです。
以下のようにしましたが、2つめのテキストエリアへフォーカス移動すると、改行が入力され、カーソルが2行目へ移動してしまいます。
enterキーを押しているのでこうなってしまうと思うのですが、
カーソルが1行目へ移動するようにするには、どうしたらいいでしょうか?
フォーカス移動後に改行コードがあったら、""にreplaceする・・等、試してみたのですが、なかなか上手くいきません。
どなたかお分かりになる方がいらっしゃったら...続きを読む

Aベストアンサー

キーコードをチェックして CRだった場合のif文ブロックの最後に

event.returnValue = false;
を追加してみてください

Q運転免許証の有効期限について

免許更新について教えてください。
有効期限である誕生日を過ぎたのですが、更新申請ができる期間は誕生日から一ヶ月先まで設定されていたので悠長にしていたら、今日、友人から、「更新は誕生日から一ヶ月先までできるけど、誕生日を過ぎたら、今持っている免許証は無効になる」と聞きました。
つまり、まだ更新は可能な期間だから、と誕生日を過ぎても更新せずに今の免許証を持って運転していると、それは無効の免許証だから無免許運転になるというのです。
明日、朝から運転しなければいけない用があります。
ご存知の方、ぜひ教えてください。

Aベストアンサー

平成14年6月1日に改正道路交通法が施行されたことにより、それ以前の旧免許証は従来と扱いが異なることとなりました。
旧免許証には、『平成○○年の誕生日まで有効』と記載されています。しかし、改正道路交通法により、現在免許証の有効期間は誕生日の1ヶ月後の日(その日が日曜日等の場合は次の平日)までとなっていますので、実際には有効期間が1ヶ月間延長されています。従って誕生日の1ヶ月前から誕生日の1ヶ月後の日(その日が日曜日等の場合は次の平日)までの2ヶ月間に免許証の更新を受ければよいということになります。
また、有効期間が1ヶ月間延長されていますので、旧免許証で誕生日の1ヶ月後の日(その日が日曜日等の場合は次の平日)まで運転することができます。

参考URL:http://www.top.in.arena.ne.jp/menkyo03kousin.html

QJavaScriptで【window.google={kHL:"ja"};】という記述はどういう意味?

JavaScriptで【window.google={kHL:"ja"};】という記述はどういう意味?


YOUTUBE日本語版
http://jp.youtube.com/
のHTMLソースを見ていたら、



<script type="text/javascript">
    window.google={kHL:"ja"};
</script>


という記述を目にしたのですがこれはどういう意味あいというか目的のものなのでしょうか?


教えていただければ幸いです。

Aベストアンサー

これは、window.googleに'kHL'というキー(値は'ja')を持つ連想配列を
作成しています。

JavaScriptでの連想配列は

var 変数名 = {
キー : '値',
キー : '値',
:,
キー : '値'
};

というような感じで作成します。
キーはダブルクォートまたはシングルクォートで囲まなくても
いいようです。

参考URL:http://javascriptist.net/docs/basic_hash.html,http://www.openspc2.org/JavaScript/kouza2007/array/hash/index.html


人気Q&Aランキング