urizakaと申します。
さて、さっそく質問なのですが、目に見えないテキストボックスって作るのは可能なのでしょうか?
 実は、現在JSPのプログラムを作っているのですが、その際、ページにテキストボックスがひとつしかない状態でそのテキストボックスにカーソルがある状態でEnterキーを押すと、勝手にサーブレットに飛んでしまうという症状が発生したため、もうひとつユーザーの目に見えないテキストボックスを作りたい(テキストボックスが二つある場合はそのような症状は起きない)と思い、<INPUT TYPE="TEXT" name="DUMMY" SIZE="0">と表示してもある程度の大きさのテキストボックスが表示されてしまいます。
 いろいろと本などで調べてみたのですが、それらしいことすら書いていない状態なので・・・すみませんが、ご存知の方が教えていただけないでしょうか?
 宜しくお願いします。

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

A 回答 (6件)

sightさんも実験して頂けたようで、感謝します。


onSubmit="return(false);"
でリターンキー押下によるサブミットを抑止できることは確かなんですけどね・・

以下の実験をして頂けないでしょうか?
<form name="CatUp" onSubmit="alert('AAA');return(false);">
これで、テキストボックス内でリターンキー押下でポップアップを表示し尚且つサブミットされるのでしたら、別の要因であると言えますが、ポップアップが表示されないのでしたら、コーディングミスの可能性が大です。
JavaScriptにエラーがある場合は当然ながらサブミットされますので・・

本当はHTMLを公開していただけるとアドバイスしやすいんですけど。

この回答への補足

 urizakaです、回答ありがとうございます。
 うーんfalseでやってみるとどうも同じですねぇ・・・ただ、逆転の発想というか、テキストボックスでEnterキーが押された場合、ボタンが押されてしまったのと同じ処理をしちまえ!!・・・というわけで、onSubmit(Func1())とJavascriptへ飛ぶようにしてみたところ、こちらはうまくいきました。
 で、この件なのですが、原因としてはどうやらHTML自身がそういう仕様になっているようです。
 HTMLは公開したいのですが、それをやってしまうといざお礼のあとにポイントを振ろうとすると、「ページにエラー」ということでポイントが触れなくなってしまうんですよね・・・うーん、なんとかならないものだろうか?
 

補足日時:2001/08/03 20:14
    • good
    • 0

手前味噌ですが、以前に何度か似たような質問をあちらこちらで見かけたので、総括して言及した事があります。


下記URLを参照してください。
わからなければ追加質問をどうぞ。

参考URL:http://jyutaro.tripod.co.jp/submit.html
    • good
    • 0
この回答へのお礼

urizakaです。
実は私も同じようなページを見つけたのですが、なるほど・・・そういう仕様なことが原因なのですね。
 で、とりあえず私はjavascriptを使って解決することにしました。

 どうもありがとうございます。

お礼日時:2001/08/03 20:22

Windows版ie5.0ではそのような状態は再現できませんでしたが・・・・



ひょっとして、その
<Input type="text"....>を、
<form name="CatUp" onSubmit="return(false);">
</form>
の外部、または別のform要素内に記述している、なんてことはないですよね?

この回答への補足

urizakaです。
それはありません。
<INPUT・・・>は</Form>の真上にあります。<FORM>が二つ以上ある、ということもありません。
 で、ツールなどを使って調べてみましたが、javascriptに遷移していることもないようです。
 こうなると方法は・・・

 1.フォーム上でEnterを押しても何もできないような処理を行う。
 2.フォーム上でEnterを押したときにjavascriptに飛ぶようにする。
 3.小さいテキストボックス(<INPUT TYPE="TEXT" SIZE="1">が最小のようです)をつくり、上から何かを被せて見えないようにする。

 しかなくなってしまうのですが・・・あまり3はやりたくありません。2はOnkeyboardとかいうメソッドか何かがあったと思うのですが、Enterキーを押した時だけ反応するようにしない限り意味がありません(何か入力する度にjavascriptに飛んでしまいますから・・・)。となると1なのですが、これもそういう方法があると聞いたこともないもので・・・。

補足日時:2001/08/03 17:34
    • good
    • 0
この回答へのお礼

 urizakaです
 えーと、onSubmitの中でfalseではなく、javascriptのファンクションを動かすというように仕様変更することで解決しました。
 大変にお世話になりました。

お礼日時:2001/08/03 20:23

><form name="CatUp" onSubmit="return(false);">


>とやってみたのですが、だめでした・・・

だめだったのは、
1.リターンキー押下でサブミットされる
2.サブミットそのものが行われない
のどちらでしょうか?

2.の場合は、呼び出し関数の最後(正常終了時)に、
document.CatUp.submit();
が必要です。

1.がだめというのは、ちょっと考えられないもので・・
(JSPで上記方法で問題なく動作することをとあるプロジェクトで検証済みです)
ブラウザはIEですよね?

この回答への補足

urizakaです

ええと症状は1です。
この状態でテキストボックス上でEnterキーを押すと勝手に、そのページを
作ったサーブレットのGET部分に飛んでいってしまいます。
また、ブラウザはIE5.0です。

補足日時:2001/08/03 16:32
    • good
    • 0

まず見えないテキストボックスですが、以下のように作成できます。


<INPUT TYPE="HIDDEN" NAME="DUMMY">

ただし、これでもテキストボックスでリターンを押した場合はサブミット(サーバへ送信)してしまいます。

対処方法としては、フォームタグのサブミットを禁止しボタンのクリックイベントでサブミットを実行します。
以下がサンプルです。

<FORM name="frmDmy" onSubmit="return(false);">
<INPUT TYPE="TEXT" name="ABC">
<INPUT TYPE="BUTTON" VALUE="OK" onClick="this.form.submit();">
</FORM>

※ボタンは、SUBMITではなくBUTTONを使用する方法推奨!

この回答への補足

urizakaです。
うーん、
<form name="CatUp" onSubmit="return(false);">
とやってみたのですが、だめでした・・・
ちなみにボタン部分は<INPUT TYPE="Button" onClick="Func1()">
でボタンを押すと、Javascriptによるチェックツールが動くようになって
います。

補足日時:2001/08/03 15:49
    • good
    • 0

どうでしょう?


触れらない(DISABLED)ならありますが、見えないテキストボックスの作り方というのは聞いたことがないのです。ご質問の内容から察するに、別にテキストボックスじゃなくてもかまわない訳ですよね? INPUT TYPE="text" などでも。
見えないフォーム部品といえば、hiddenがありますが、これがあってもやはりEnterを押せばAction先に飛んでしまうでしょう。
ですから、たとえ見えないテキストボックスが作れたとしても、それがフォーカスの遷移しない、コントロールのわたらないオブジェクトのある以上、やっぱり(表示されているページで唯一の)テキストボックスでEnterを押したらActionが動いてしまうのではないでしょうか?

該当ページは、仕様上JavaScriptの使用は不可ですか?
JavaScriptが使用できるのなら、FormのActionはjavascript:void(0);とかにしておいて、送信用のボタンを押したときにだけJavaScriptを実行させてAction先をサーブレットに変えてsubmitをするようにすればよいと思いますが。

この回答への補足

Urizakaです。
えーと、まずテキストボックスというのは<INPUT TYPE="TEXT"・・・>です。
説明不足でしたね・・・。
また、javascriptですが、使っております。
具体的には

function func2(){
res = confirm("カテゴリー一覧に戻ります。宜しいですか");
if (res == true){
 document.CatUp.method = "Post";
 document.CatUp.action="/servlet/mondaikadai.CategolyUpdateServlet";
document.CatUp.MySubmit.value = "Back";
document.CatUp.submit();
}else{
return false;
}
}

という具合です。(このファンクションはボタンが押されたときにonclickで動きます)。そして、<FORM name="CatUp">であるため、ここには遷移先のサーブレットのアドレスは書き込んでありません。また、遷移先のサーブレットですが、これはこのJSPページを作るのに使ったまったく別のサーブレットで、そのアドレスはこのページのソースコード上には書き込んでありません。
 このような状況なのですが・・・
 

補足日時:2001/08/03 15:55
    • good
    • 0

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

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

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

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

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

QWordのテキストボックスの行間をつめたいのです

Wordのテキストボックスの行間をつめたいのです。

他者からもらった印刷物がありますが、
文字の高さが3.3mmで行間が3.6mm程度です。
Wordでやろうとしていますがなかなかできません。
テキストボックスの中に文字を入れればテキストボックスの上との行間が縮まりますが
テクストボックス内の行間が縮まりません。
どうしたらできますか?

Aベストアンサー

こんばんは!
↓の画像でテキストボックス内の行間を12ptでやってみました。
当方使用のWord2003の場合です。

左側のテキストボックスはデフォルト(ページ設定)の1行の行間そのままです。

(1)テキストボックス内の文字を範囲指定 → メニュー → 書式 → 段落
(2)「インデントと行間隔」タブ → 間隔の「行間」の下向き▼を選択 → 「固定値」を選択(自動で12ptになると思います)
このポイント数で好みの行間に設定できます。

※ 行間とは文字の上端~次の行の文字の上端までですので、行ピッチと言った方が判りやすいかもしれません。

すなわち、フォントサイズよりも小さいpt数を設定してしまうと文字が重なってしまいます。

以上、参考になれば良いのですが
的外れならごめんなさいね。m(_ _)m

Qラジオボタンとテキストボックスで、ボタン選択時のテキストボックスの入力チェックするにはどうしたらよいでしょうか?

ラジオボタンとテキストボックスの組合わせで使用し、ラジオボタン選択時のテキストボックスの入力チェックをするにはどうしたらよいのでしょうか?

以下はそのhtmlソースになります。

<table border="0" cellspacing="2" cellpadding="0">
<tr>
<td><input type="radio" name="addsearch" value="検索エンジン" id="p1"></td>
<td colspan="2"><label for="p1"><span class="stress2">検索エンジン</span></label></td>
</tr>
<tr>
<td></td>
<td>検索エンジン名</td>
<td><INPUT TYPE=text NAME="addsearch1" VALUE="" SIZE=40></td>
</tr>
<tr>
<td><input type="radio" name="addsearch" value="ご紹介で" id="p2"></td>
<td colspan="2"><label for="p2"><span class="stress2">ご紹介で</span></label></td>
</tr>
<tr>
<td></td>
<td>ご紹介者のお名前をおしえてください。</td>
<td><INPUT TYPE=text NAME="addsearch2" VALUE="" SIZE=40></td>
</tr>
<tr>
<td><input type="radio" name="addsearch" value="広告を見て" id="p3"></td>
<td colspan="2"><label for="p3"><span class="stress2">広告を見て</span></label></td>
</tr>
<tr>
<td></td>
<td>どこの広告ですか?</td>
<td><INPUT TYPE=text NAME="addsearch3" VALUE="" SIZE=40></td>
</tr>
<tr>
<td><input type="radio" name="addsearch" value="その他" id="p4"></td>
<td colspan="2"><label for="p4"><span class="stress2">その他</span></label></td>
</tr>
<tr>
<td></td>
<td>具体的にお願いします。</td>
<td><INPUT TYPE=text NAME="addsearch4" VALUE="" SIZE=40></td>
</tr>
</table>

よろしくおねがいいたします。

ラジオボタンとテキストボックスの組合わせで使用し、ラジオボタン選択時のテキストボックスの入力チェックをするにはどうしたらよいのでしょうか?

以下はそのhtmlソースになります。

<table border="0" cellspacing="2" cellpadding="0">
<tr>
<td><input type="radio" name="addsearch" value="検索エンジン" id="p1"></td>
<td colspan="2"><label for="p1"><span class="stress2">検索エンジン</span></label></td>
</tr>
<tr>
<td></td>
<td>検索エンジン名</td>
<td><INPUT TYPE=text NAME="...続きを読む

Aベストアンサー

ちょっとはしょっちゃいましたがこんなんで
どうでしょ?

<form>
<table border="1">
<tr>
<td><input type="radio" name="addsearch" onClick="focusText(this,1)"></td>
<td colspan="2">検索エンジン</td>
</tr>
<tr>
<td><br></td>
<td>検索エンジン名</td>
<td>
<INPUT TYPE=text NAME="addsearch1" SIZE=40 onFocus="checkRadio(this,0)">
</td>
</tr>
<tr>
<td><input type="radio" name="addsearch" onClick="focusText(this,2)"></td>
<td colspan="2">ご紹介で</td>
</tr>
<tr>
<td><br></td>
<td>ご紹介者のお名前をおしえてください。</td>
<td><INPUT TYPE=text NAME="addsearch2" SIZE=40 onFocus="checkRadio(this,1)"></td>
</tr>
<tr>
<td><input type="radio" name="addsearch" id="p3" onClick="focusText(this,3)"></td>
<td colspan="2">広告を見て</td>
</tr>
<tr>
<td><br></td>
<td>どこの広告ですか?</td>
<td><INPUT TYPE=text NAME="addsearch3" SIZE=40 onFocus="checkRadio(this,2)"></td>
</tr>
<tr>
<td><input type="radio" name="addsearch" value="その他" id="p4" onClick="focusText(this,4)"></td>
<td colspan="2">その他</td>
</tr>
<tr>
<td><br></td>
<td>具体的にお願いします。</td>
<td><INPUT TYPE=text NAME="addsearch4" VALUE="" SIZE=40 onFocus="checkRadio(this,3)"></td>
</tr>
</table>
</form>

<script language=javascript>
function checkRadio(num,n){
num.form.addsearch[n].checked=true
}
function focusText(num,n){
num.form.elements["addsearch"+n].focus()
}
</script>

ちょっとはしょっちゃいましたがこんなんで
どうでしょ?

<form>
<table border="1">
<tr>
<td><input type="radio" name="addsearch" onClick="focusText(this,1)"></td>
<td colspan="2">検索エンジン</td>
</tr>
<tr>
<td><br></td>
<td>検索エンジン名</td>
<td>
<INPUT TYPE=text NAME="addsearch1" SIZE=40 onFocus="checkRadio(this,0)">
</td>
</tr>
<tr>
<td><input type="radio" name="addsearch" onClick="focusText(this,2)"></td>
<td colspan="2">ご紹介で</td>
</tr>
<tr>
<...続きを読む

Qエクセル2002/テキストボックス内の文章の行間?

エクセル2002です。
テキストボックス内に書いた文章の行間を任意に変えることが可能ですか?

普通に書くとくっつきつぎで、一行あけると開きすぎなので、一行の半分くらいの行間にしたいのです。
テキストボックスの書式設定は見てみましたが、方法を見つけられませんでした。

Aベストアンサー

あまり良い方法と言えないかもしれませんが。

テキストボックス内に文字を入力します。
そしてテキストボックスの書式設定を出して、配置のタブを開きます。
文字の配置の縦位置を「均等割付」に設定します。
これでテキストボックスの縦の高さに合わせて、行間が広がります。
ちょうど良い行間にテキストボックスの高さを調節します。

Qテキストボックス(INPUT TYPE=TEXT)の属性について

INPUTタグのTYPEをTEXTにする事によって、
テキストボックスが表示されます。
このテキストボックスに文字が入力されたら通常は左詰めに文字が
入力されますが、これを右詰めに文字を入力させたく思ってます。
このような事って可能なのでしょうか?

Aベストアンサー

実験したことありませんが、スタイルシートで可能かもしれません。

<INPUT style="text-align: right" TYPE=TEXT>

表示はすると思いますが、入力時の表示は?

Qパワポのテキストボックスの行間のデフォルト値の設定

パワポ2000を使っています。
テキストボックスを作ると必ず行間が9.99行となっているので、毎回1行に変更しています。作った時点に1行になるように、変更する方法がわかりません。
つまり、パワポのテキストボックスの行間のデフォルトを、現在の9.99行から1行に変更したらよいのですが、変更する方法がわかりません。

Aベストアンサー

行間を1行にしたテキストボックスを選択し、右クリックで「オートシェープの規定値」選択すると次からのテキストボックスは開業行になりませんか?

Qでテキストボックスとセルの間にわずかな隙間があいてしまう・・

<TABLE>
<!-- ここから10回ほど繰り返し -->
<TR>
<TD>
<INPUT TYPE="TEXT">
</TD>
</TR>
<!-- ここまで -->
</TALBLE>

こう書くときに、テキストボックスの下にわずかな隙間が
できるのを防ぎたいのですが、何か方法はありませんでしょうか?

Aベストアンサー

隙間をつくってしまう原因はいくつかあります。

(1) <TABLE>タグ
BORDER=0またはNOBORDERにする。
CELLSPACING=0
CELLPADDING=0

(2) <INPUT TYPE="TEXT">前後の改行
<TD><INPUT TYPE="TEXT"></TD>

(3)<FORM>や</FORM>タグの記述場所
恐らくこれが原因でしょう。
上記には記述されていませんが、
<TABLE>
<TR>
<TD>
<FORM ~>
</TD>
</TR>
<!-- ここから10回ほど繰り返し -->
<TR>
<TD>
<INPUT TYPE="TEXT">
</TD>
</TR>
<!-- ここまで -->
<TR>
<TD>
</FORM>
</TD>
</TR>
</TABLE>
としていませんか?
HTMLとしては好ましくないと思いますが、<FORM>や</FORM>の前後にある<TR><TD>~</TD></TR>を取り除き、以下の様にします。
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
<FORM ~>
<!-- ここから10回ほど繰り返し -->
<TR>
<TD><INPUT TYPE="TEXT"></TD>
</TR>
<!-- ここまで -->
</FORM>
</TABLE>

尚、表の罫線を残すのであればBORDERを変更したりしてください。

隙間をつくってしまう原因はいくつかあります。

(1) <TABLE>タグ
BORDER=0またはNOBORDERにする。
CELLSPACING=0
CELLPADDING=0

(2) <INPUT TYPE="TEXT">前後の改行
<TD><INPUT TYPE="TEXT"></TD>

(3)<FORM>や</FORM>タグの記述場所
恐らくこれが原因でしょう。
上記には記述されていませんが、
<TABLE>
<TR>
<TD>
<FORM ~>
</TD>
</TR>
<!-- ここから10回ほど繰り返し -->
<TR>
<TD>
<INPUT TYPE="TEXT">
</TD>
</TR>
<!-- ここまで -->
<TR>
<TD>
</FORM>
</TD>
</TR>...続きを読む

Qテキストボックス内の行間の変え方

Microsoft Wordでテキストボックス内の行間を変えるにはどうしたらよいですか。
文字サイズを大きくすると、伴って行間も広くなってしまうのですが、行間だけを指定することができるでしょうか。教えて下さい。

Aベストアンサー

テキストボックス内のテキストを選択して右クリック
「段落」を選択してください。
行間の変更ができます。

Qはダメ?

これまで、
<FONT SIZE="2">を
<FONT SIZE=2>と長らく書いてきました。
その他の例としては、
<FONT COLOR=red>
など
「"」を使わずに作成してきたHTMLファイルが多数あります。見たところ問題なく動作しているようですが、「"」を使わないことでの問題等があれば教えていただけますか。修正したほうが良いものでしょうか。

Aベストアンサー

確かに楽ですよね。特に、JavaScript等、HTML以外の言語でHTMLを書き出す場合、
書き出す側の言語の文字列を表す記号として使われる二重引用符とぶつかるので、
エスケープシーケンス使うのが面倒だったりするとやってしまいます。

HTMLの仕様によると、属性値は、基本は二重引用符でくくることとなっています。
そして、値が特定のキャラクタ(英数字、ハイフン、ピリオド)の場合は省略が可です。
つまり、s-holmesさんの<FONT SIZE=2>、<FONT COLOR=red> 共に仕様上問題なし、
だと思います。
と、いうか、<FONT SIZE="2>とかいうミスをしてブラウザが解釈できないよりは
よっぽどましだと思います。

ですから、省略可の部分に関しては、個人のポリシーと一般的な慣習でよいのではないでしょうか。
たとえば、FORMのOPTION要素と、TABLEのTD要素は両方とも閉じタグを省略可ですけど、
OPTIONの閉じタグを省略している人は多くてもTDはあまりいない気がします。

また、この仕様に則ると、<FONT SIZE=-1>はOKだが、<FONT SIZE=+1>はNG、
ということになります。
こういう場合は気持ち悪いので両方とも二重引用符で囲うべきでしょうね。

省略可な属性値でない場合、IEやNNでは、実際二重引用符を使わなくてもたいてい
動作しますが、これはIEやNNといったHTMLユーザークライアントソフトが勝手にそういう
解釈をしているだけで・・・。
HTMLの仕様とブラウザの実装、どちらに則ってページを構築するべきか、というのは
議論の余地があるかもしれませんが、基本的に、
  ・まぎらわしいから属性値は全部引用符で囲う。
  ・仕様上、省略しても問題ない場合は徹底的に省略する。
のどちらかを、HTMLドキュメント制作者が任意に選択してかまわないと思います。

確かに楽ですよね。特に、JavaScript等、HTML以外の言語でHTMLを書き出す場合、
書き出す側の言語の文字列を表す記号として使われる二重引用符とぶつかるので、
エスケープシーケンス使うのが面倒だったりするとやってしまいます。

HTMLの仕様によると、属性値は、基本は二重引用符でくくることとなっています。
そして、値が特定のキャラクタ(英数字、ハイフン、ピリオド)の場合は省略が可です。
つまり、s-holmesさんの<FONT SIZE=2>、<FONT COLOR=red> 共に仕様上問題なし、
だと思います。
と、い...続きを読む

QPPTのVBA 全てのテキストボックスの行間を最小

【PPTのVBA 全てのテキストボックスの行間を最小に】

 今晩は、質問させていただきます。どうぞよろしくお願いいたします。
PPT2007でございます。

 手元に大量にあるPPTファイル群のテキストボックスの行間が全て広いため、
全て一括で小さくしてしまいたい次第でございます。
もしこれを手作業でやりますと、テキストボックスをアクティブにする→右クリック
→「段落」→「段落前」を0に。
となり時間がかかりますため、VBAでどうにかしたい次第でございます。

 しかしネットで検索しても出てこず、
また上記操作を自動記録しようといたしましても記入されません。
(PPT2007には自動記録が無いため、excel、wordでトライいたしましたが、無理でございました。。。)

一個のテキストボックスの操作方法さえ分かれば後は、
For each スライド
  For each テキストボックス
  :
  :
  Next
Next
みたいな感じで出来ると思うのでございますが。。

 もしお詳しい方がいらっしゃいましたら,お教えいただけないでしょうか。
どうぞよろしくお願いいたします。

【PPTのVBA 全てのテキストボックスの行間を最小に】

 今晩は、質問させていただきます。どうぞよろしくお願いいたします。
PPT2007でございます。

 手元に大量にあるPPTファイル群のテキストボックスの行間が全て広いため、
全て一括で小さくしてしまいたい次第でございます。
もしこれを手作業でやりますと、テキストボックスをアクティブにする→右クリック
→「段落」→「段落前」を0に。
となり時間がかかりますため、VBAでどうにかしたい次第でございます。

 しかしネットで検索しても出てこず、
また...続きを読む

Aベストアンサー

MKT_さん
こんにちは。

下記のコードでできると思います。
※PPT2003での対応ですが…

Sub 行間変更()
 Dim I  As Long
 Dim J  As Long
 For I = 1 To ActivePresentation.Slides.Count
  With ActivePresentation.Slides(I)
   For J = 1 To .Shapes.Count
    If .Shapes(J).HasTextFrame = msoTrue Then
     .Shapes(J).TextFrame.TextRange.ParagraphFormat.SpaceBefore = 0
    End If
   Next J
  End With
 Next I
End Sub

Q携帯サイトにタグを使いたい

携帯は機種によって<font size="">タグが
使えるものと使えないものがありますが
全キャリア向けに作成したサイトに、
文字の大きさが小さくできる機種も想定して
念のために<font size="">タグを入れといても
<font size="">タグが対応していない機種に対して
差し支えないでしょうか?
また、ついで質問なんですが、現在の最新機種では<font size="">タグは
全キャリアに対応しているのでしょうか?

Aベストアンサー

<font size="">タグ対応についてですが下記のようになっているようです。
◆ドコモ……htmlバージョン5.0以降対応
◆au……対応なし
◆ソフトバンク……対応なし
htmlバージョン5.0以降なので、ドコモの機種であればよほど古い機種でない限りソースどおりに表示されるということです。
対応していない機種では、無視されます。


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

人気Q&Aランキング