【無料配信♪】Renta !全タテコミ作品第1話

<select> <option>のプルダウンをクリックすると、
展開されますが
(1)上に展開する場合もあるし、下方向に展開する
 場合もある。
 これは設定出来ますでしょうか?
(2)展開する時、表示する行数を設定できますでしょうか?

宜しくお願いします。

A 回答 (1件)

いずれも、出来ません。


そのボタンが画面の下にあるとき下に伸びたら・・

(2)展開する時、表示する行数を設定できますでしょうか?
 あらかじめ、size="10"とかで開いておくことしかできません。
    • good
    • 0
この回答へのお礼

有難う御座いました。
やはりHTMLでは無理ですか

お礼日時:2012/02/02 21:52

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

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

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

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

QSELECTのプルダウンの長さの調整

困っております。。ご存じの方ぜひ教えて頂けたらと思います。


HTMLのSELECTタグでプルダウンを作成しています。
OPTIONで指定しているリストは100件ほどあります。
この状態で▼を押してリストを表示すると、
縦が長すぎで、画面の外に飛び出る場合があります。
こうなると、スクロールバーもつまむことができないので
目的のものが選択できないことがあります。
プルダウンの表示長さを調節することはできませんでしょうか?

なお、SELECT以外の代替え案は勝手ながらご遠慮願います。
よろしくお願いしますm(_ _)m

Aベストアンサー

> 縦が長すぎで、画面の外に飛び出る場合があります。

・・・ブラウザのバグと思います。
参考に、OSと、ブラウザの種類とバージョンを教えて戴けないでしょうか。
(Safari3.0にはブックマークが画面外に表示されて選択できなくなるバグがありましたが)

ネットブックのような画面が小さなパソコンでは、
都道府県(47項目)を表示するだけで画面サイズを超えますので、
そういうブラウザでは閲覧できなくなってしまいますね。
(IE7ではセレクトフィールドのプルダウンメニューにスクロールバーが表示されました)

> プルダウンの表示長さを調節することはできませんでしょうか?
残念ながらそういう方法はありません。

ブラウザベンダーに連絡して、バグを修正してもらうのを待つか、
代替案として<select size="">を指定したり、
<optgroup>で入れ子にしていくとか、
JavaScriptのフローティングウインドウ(ポップアップウインドウ)で擬似的にプルダウンメニューをつけるくらいしかないと思います。


横幅については

<option value="1" label="ほげ">あいうえおあいうえお・・・</option>

という、短く表示する方法もありますが、ブラウザが対応していない可能性の方が高いです。
(この例では「ほげ」が表示される・・・はず)

> 縦が長すぎで、画面の外に飛び出る場合があります。

・・・ブラウザのバグと思います。
参考に、OSと、ブラウザの種類とバージョンを教えて戴けないでしょうか。
(Safari3.0にはブックマークが画面外に表示されて選択できなくなるバグがありましたが)

ネットブックのような画面が小さなパソコンでは、
都道府県(47項目)を表示するだけで画面サイズを超えますので、
そういうブラウザでは閲覧できなくなってしまいますね。
(IE7ではセレクトフィールドのプルダウンメニューにスクロールバーが表示...続きを読む

QHTMLフォームのSELECTの幅を一定にするためには?

HTMLフォームのSELECTの幅を一定にするためにはどのようにすれば
いいのでしょうか?

CSS等で設定できるとありがたいのですが、やり方がわかりません。

Aベストアンサー

<select style="width: 200px">

Qプルダウン(リストボックス)の最大選択個数

リストボックスの「▼」ボタンを押下した際に一度に表示される項目数(スクロールさせないで一度に可視できる項目数)を11個以上(数指定)にすることは可能でしょうか?

私が調べました所、そのような属性は無いようなのですが、何か方法がありますでしょうか?

HTML(開発はASP)の仕様で不可能であれば仕方がないのですが・・・

Aベストアンサー

無理みたいですね・・・。

一応、CSS で height:100px; とか overflow:visible; を試してみましたが効果はありませんでした。

また、ブラウザを小さく表示してみて思ったのですが、
プルダウンリストがウィンドの外まで出て表示されるので、ブラウザの仕掛けとして操作できないのではないかと思います。

尚、項目数が11個なのは IE の場合で、
Mozilla, Firefox では17個で Opera では28個で Sleipnir は30個でした。

Qプルダウンメニュー表示時の高さの指定方法

ブラウザ上でプルダウンメニューを表示させる際に、表示される高さ(タテ幅)の指定をするにはどうすればよいか、ご存知の方は教えていただけないでしょうか?

ちなみに、プルダウンメニューの横幅は、<select>タグ内に、「style="width:(幅を指定);"」を記述することで固定幅の設定が可能でしたが・・・

なお、プルダウンメニューは初期表示として、1件のみ表示させるものとします(すなわち、<select>タグ内の「size="1"」の指定は変えないこととする)。

というのも、プルダウンに表示させる項目(条件によって可変)の件数が多い場合に、プルダウンメニュー内でスクロールさせるのをできるだけ避けたいためです。
よって、方法としては、
1.プルダウン表示させる際の高さ(タテ幅)を固定で指定する
2.可能であれば、登録されている全項目の表示をさせる
以上2つの方法を考えています。

なにかよい方法があれば、ぜひ教えてください。

Aベストアンサー

ご存知のように<select>タグの属性で縦幅を設定することはできませんね。

http://tohoho.wakusei.ne.jp/html/select.htm

スタイルでも設定はできないようですね。

異なるOSで同じブラウザで同じページの<select>タグ内を
表示しても縦幅が異なりますので
OSに依存されてしまうのでしょうか?
また、画面の解像度によるかもしれません。

Qjavascriptでselectボックスの

javascriptでselectボックスの<OPTION>要素数の取得する方法について疑問があります。

データが1件の場合、複数件の場合とで分けて、
<OPTION>要素数を取得する処理を記述していますが、
データが1件の場合、
document.getElementsByName("sel").length
で正しい値が取得できません。

詳しくは下記のソースを参照していただきたいのですが、
(1)、(2)、(4)は、正しい値'5'ですが、
(3)だけ誤った値'1'になります。

これはなぜでしょうか?
javascript初心者のため、初歩的な質問かもしれませんが、
教えていただけたら嬉しいです。
よろしくお願い致します。

--------------------------------------
<HTML>
<HEAD>
<SCRIPT language="JavaScript">
  function getSelLen(){
var oForm = document.form1;
var sObj;
var sObj2;

//チェックボックスの数でデータが複数件か1件か判別しています。
if(oForm.chk.length){//データが複数件の場合
for ( var i = 0; i < oForm.chk.length; i++ ) {
sObj=document.getElementsByName("sel")[i];
alert("(1) "+ sObj.length);//・・・・(1) 正
sObj2=oForm.elements["sel"][i];
alert("(2) "+ sObj2.length);//・・・・(2) 正
}
}else{//データが1件の場合
sObj=document.getElementsByName("sel");
alert("(3) "+ sObj.length);//・・・・(3) 誤
sObj2=oForm.elements["sel"];
alert("(4) "+ sObj2.length);//・・・・(4) 正
}
}
</SCRIPT>
</HEAD>
<BODY>
<FORM name="form1">
<TABLE>
<TR>
<TD>
<INPUT type="checkbox" name="chk" >
</TD>
<TD>
<SELECT name="sel" >
<OPTION value="" selected>
<OPTION value="00">00
<OPTION value="01">01
<OPTION value="02">02
<OPTION value="03">03
</TD>
</TR>
<!-- 複数件の場合 以下のコメントアウトを解除する -->
<!--
<TR>
<TD>
<INPUT type="checkbox" name="chk" >
</TD>
<TD>
<SELECT name="sel" >
<OPTION value="" selected>
<OPTION value="00">00
<OPTION value="01">01
<OPTION value="02">02
<OPTION value="03">03
</TD>
</TR>
-->
</TABLE>
</FORM>
<FORM name="form2">
<INPUT type="button" onClick="getSelLen()" value=" selectの要素数 ">
</FORM>
</BODY>
</HTML>

javascriptでselectボックスの<OPTION>要素数の取得する方法について疑問があります。

データが1件の場合、複数件の場合とで分けて、
<OPTION>要素数を取得する処理を記述していますが、
データが1件の場合、
document.getElementsByName("sel").length
で正しい値が取得できません。

詳しくは下記のソースを参照していただきたいのですが、
(1)、(2)、(4)は、正しい値'5'ですが、
(3)だけ誤った値'1'になります。

これはなぜでしょうか?
javascript初心者のため、初歩的な質問かもしれませんが、
教えていた...続きを読む

Aベストアンサー

getElementsByName()は必ず配列になりますから、
<select name="sel">が1つであっても、<select>を1つだけ取得したい場合は[0]という指定が必要です。


}else{//データが1件の場合
sObj=document.getElementsByName('sel')[0]; // 訂正箇所
alert("(3) "+ sObj.length);//・・・・(3) 誤


sObj.lengthの値は、
sObj=document.getElementsByName('sel')とした場合は<select name="sel">の個数、
sObj=document.getElementsByName('sel')[0]とした場合は、1つめの<select name="sel">の<option>の個数になります。



この動作(配列になるかならないか)はform.elements['sel']の動作と異なります。



なお、複数のフォームフィールドに同じnameが指定されていても問題ありません。
それで送信に失敗する場合は、通常はデータを受け取るCGIアプリケーションのバグです。

PHPで受け取る場合は、通常はname="name[]">のように四角カッコを付ける必要がありますが、HTMLとしては文法違反になります。
<select>に multiple を指定する場合も四角カッコが必要です。

getElementsByName()は必ず配列になりますから、
<select name="sel">が1つであっても、<select>を1つだけ取得したい場合は[0]という指定が必要です。


}else{//データが1件の場合
sObj=document.getElementsByName('sel')[0]; // 訂正箇所
alert("(3) "+ sObj.length);//・・・・(3) 誤


sObj.lengthの値は、
sObj=document.getElementsByName('sel')とした場合は<select name="sel">の個数、
sObj=document.getElementsByName('sel')[0]とした場合は、1つめの<select name="sel">の<option>の個数になり...続きを読む

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"] { (ここにスタイル) }

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

QSELECT要素の垂直位置

SELECTをheight指定で高さを広げています。

<select style='height:30px;'>
<option value='1'>要素1</option>
<option value='2'>要素2</option>
<option value='3'>要素3</option>
<option value='4'>要素4</option>
</select>

IE8だと要素文字列がプルダウン表示枠の下に寄ってしまいます。
FireFoxやIE9以上だと垂直方向の中央に寄ります。

できれば、これをIE8でも垂直方向の中央に寄せたいのですが、
方法がわかりません。宜しくお願いします。

IE8だと
┌─────────────
│                   
│                   ▼
│要素1               
└─────────────

↓ IE8でもこうしたい

FireFoxやIE9以上だと
┌─────────────
│                   
│要素1               ▼
│                   
└─────────────

SELECTをheight指定で高さを広げています。

<select style='height:30px;'>
<option value='1'>要素1</option>
<option value='2'>要素2</option>
<option value='3'>要素3</option>
<option value='4'>要素4</option>
</select>

IE8だと要素文字列がプルダウン表示枠の下に寄ってしまいます。
FireFoxやIE9以上だと垂直方向の中央に寄ります。

できれば、これをIE8でも垂直方向の中央に寄せたいのですが、
方法がわかりません。宜しくお願いします。

IE8だと
┌─────────────
│           ...続きを読む

Aベストアンサー

 formのユーザーインターフェースに関わる物は基本的にスタイルシートで変更はできません。出来たとしても弄るべきではありません。
 サイトごとに、ユーザーインターフェースが異なると困るからです。

 ただ、標準モードだと下記の通り・・
p.form{line-height:60px;}
p.form select,p.form select option{display:block;height:60px;}


<form action="./">
 <p>本文項記事</p>
 <p class="form">
  <select name="test">
   <option value='1'>要素1</option>
   <option value='2'>要素2</option>
   <option value='3'>要素3</option>
   <option value='4'>要素4</option>
  </select>
 </p>
</form>

★UIに関わる部分---例えばカソールとか---は弄らないは原則です。
 すべてのユーザーがfirefoxやIE,Chrome使っているわけじゃない。
【引用】____________ここから
HTMLは、どんな環境からもWebの情報を利用できるようにすべきだという方針の下に開発されている。例えば、様々な解像度や色深度のグラフィックディスプレイを持つPCや、携帯電話、モバイル機器、音声入出力機器、帯域が広いコンピュータや狭いコンピュータ、等の環境である。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Introduction to HTML 4 (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )]より

 formのユーザーインターフェースに関わる物は基本的にスタイルシートで変更はできません。出来たとしても弄るべきではありません。
 サイトごとに、ユーザーインターフェースが異なると困るからです。

 ただ、標準モードだと下記の通り・・
p.form{line-height:60px;}
p.form select,p.form select option{display:block;height:60px;}


<form action="./">
 <p>本文項記事</p>
 <p class="form">
  <select name="test">
   <option value='1'>要素1</option>
   <option value='2'>要素2</optio...続きを読む

Qjavascriptでセレクトボックスの"selected"を動的につ

javascriptでセレクトボックスの"selected"を動的につける方法について質問させてください。

現在、以下のようなフォームを作成しました。

<select name='year'>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
<option value='11'>11</option>
<option value='12'>12</option>
</select>月

<select name='day'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
<option value='11'>11</option>
<option value='12'>12</option>
<option value='13'>13</option>
<option value='14'>14</option>
<option value='15'>15</option>
<option value='16'>16</option>
<option value='17'>17</option>
<option value='18'>18</option>
<option value='19'>19</option>
<option value='20'>20</option>
<option value='21'>21</option>
<option value='22'>22</option>
<option value='23'>23</option>
<option value='24'>24</option>
<option value='25'>25</option>
<option value='26'>26</option>
<option value='27'>27</option>
<option value='28'>28</option>
<option value='29'>29</option>
<option value='30'>30</option>
<option value='31'>31</option>
</select>日


このセレクトボックスに、例えば今日の日付"2010年9月30日"だったら、それぞれの年、月、日の<option>に"selected"をつけたいのですが、javascriptではどのようにして実現したら良いのでしょうか?

よろしくお願いします。

javascriptでセレクトボックスの"selected"を動的につける方法について質問させてください。

現在、以下のようなフォームを作成しました。

<select name='year'>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='1'>1</option>
<option value='2'>2</option>
<option value='3'>3</option>
<option value='4'>4</option>
<option value='5'>5</option>
<option value='6'>6</option>
<option value='7'>7</option>
<option value='8...続きを読む

Aベストアンサー

こんな感じで・・・

<script>
window.onload=function(){
var f=document.getElementById("f0");
var ymd=new Date();
checkSelect(f.elements["year"],ymd.getFullYear());
checkSelect(f.elements["month"],ymd.getMonth() +1);
checkSelect(f.elements["day"],ymd.getDate());
}
function checkSelect(obj,val){
for(var i=0;i<obj.length;i++){
if(obj[i].value==val){
obj[i].selected=true;
break;
}
}
}
</script>
<form id="f0">
<div>
<select name='year'>
<option value='2009'>2009</option>
<option value='2010'>2010</option>
<option value='2011'>2011</option>
</select>年

<select name='month'>
<option value='8'>8</option>
<option value='9'>9</option>
<option value='10'>10</option>
</select>月

<select name='day'>
<option value='29'>29</option>
<option value='30'>30</option>
<option value='31'>31</option>
</select>日
</div>
</form>

こんな感じで・・・

<script>
window.onload=function(){
var f=document.getElementById("f0");
var ymd=new Date();
checkSelect(f.elements["year"],ymd.getFullYear());
checkSelect(f.elements["month"],ymd.getMonth() +1);
checkSelect(f.elements["day"],ymd.getDate());
}
function checkSelect(obj,val){
for(var i=0;i<obj.length;i++){
if(obj[i].value==val){
obj[i].selected=true;
break;
}
}
}
</script>
<form id="f0">
<div>
<select name='year'>
<opt...続きを読む

Qselectのプルダウンメニュー内容の高さ指定

selectのプルダウンメニュー内容の高さを指定することってできますか?
色々自分なりに探してみましたがなかったので質問させて頂きますーー
プルダウンはしたいが、メニュー内容が多くなるとスクロールがでるのをなくしたく。しかしやっぱりでてしまうので高さを内容以上に指定すればスクロールバーがでなくなるのかな、と思いまして。

Aベストアンサー

<select name="ほげほげ" size="数字"> ~ </select>

とすると、数字で記載した分の行数が表示されると思いますが…。

Qフォームで同じ複数のnameで違うvalueの送信

始めまして、現在一個のフォーム内で複数の同じnameで、違うvalueを送信しようと苦戦しております、、普通にタグを書くだけでは
一個のnameで違うvalueの送信は、最後のvalueしか送信できないです、
phpは使用できません。javaは、、殆ど素人なので、あまり分かりません、、formを一個一個区切るのも、レイアウト上できません、、
どうすればいいのでしょうか?・・・以下タグです。
昨日から、ここから先に進めません。。
先輩方助けてください、本当によろしくお願いします。

<form action="http://hoge.net/hoge/hogecheck.php" method="post">
<input type="hidden" name="site" value="hoge">
<input name="id" type="text" id="idform" maxlength="10" />

<input type="hidden" name="kin" value="3000">
<input type="image" src="buybtn.gif" />
<input type="hidden" name="kin" value="5000">
<input type="image" src="buybtn.gif" />
<input type="hidden" name="kin" value="10000">
<input type="image" src="buybtn.gif" />
<input type="hidden" name="kin" value="20000">
<input type="image" src="buybtn.gif" />

</form>

始めまして、現在一個のフォーム内で複数の同じnameで、違うvalueを送信しようと苦戦しております、、普通にタグを書くだけでは
一個のnameで違うvalueの送信は、最後のvalueしか送信できないです、
phpは使用できません。javaは、、殆ど素人なので、あまり分かりません、、formを一個一個区切るのも、レイアウト上できません、、
どうすればいいのでしょうか?・・・以下タグです。
昨日から、ここから先に進めません。。
先輩方助けてください、本当によろしくお願いします。

<form action="http://hoge...続きを読む

Aベストアンサー

No.2の回答者です。
スミマセンm(__)m、Javaでしたね。PHPで書いてしまいました。。。

Java だったらこれで取れます。(HTML側の修正は不要です。)
String[] kin= req.getParameterValues("kin");


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

人気Q&Aランキング