フォーム内文字の右寄せは出来る?

[上に] [前に] [次に]
AKISE 1998/06/18(木) 13:28:47
フォームの中にデフォルトで文字を指定する場合(VALUE="")、
ついでにデフォルト文字をあらかじめ
右寄せしておく事は出来ませんか?
出来れば入力する時も右寄せできればうれしいんですが・・・
(数字が全部左寄せだとキモチワルイので)

mura [E-Mail] 1998/06/20(土) 09:34:01
#他の方から回答がないようですので…。

もちろん左に空白を入れれば見た目の右寄せはできるんですが、
IE3やNN3でもできる右寄せの方法はないと思います。
(スタイルシートも"text-align: right"は効かないみたいですね)

AKISE 1998/06/22(月) 08:19:38
そうですか…。私もかなりあれこれ試してみましたが、
無理みたいです。うーん残念。
返事をありがとうございました。
実は仕事で必要だったのです。(^^;)

seltza 1998/06/22(月) 09:38:04
私は自分のページでこんなん使ってます。

==フォーム部==

<INPUT TYPE="text" NAME="age" SIZE="4" MAXLENGTH="4" onFocus="rset(this.form.age)" onBlur="hset(this.form.age)">
<INPUT TYPE="text" NAME="point" SIZE="4" MAXLENGTH="4" onFocus="rset(this.form.point)" onBlur="hset(this.form.point)">
...
...

==JavaScript部==

function rset(form) {
form.value = dlsp(form.value) ;
}

function hset(form) {
var numc = form.value ;
while ( numc.length < 4 )  numc = " " + numc ; // テキスト入力欄のサイズが4のとき
form.value = numc ;
}

function dlsp(ips) {
var s = "" + ips ;
var outStr = "" ;
for ( i=0 ; i < s.length ; i++ ) {
var oneChar = s.charAt(i) ;
if ( oneChar != " ") outStr += oneChar ;
}
return outStr ;
}

==========

ここでは、「数字右寄せ」に該当するテキスト入力欄は、すべてサイズを4に限定しています。ばらばらのサイズについて適用したい場合は適当に手を加えてみて下さい。

さっと引っ張ってきただけなので、おかしいところがあるかもしれませんが、ご容赦を。

AKISE 1998/06/23(火) 12:24:15
早速試してみましたが・・・
残念ながら、無理っぽいです・・・(^^;)
そのまま貼り付けただけじゃ無理なのかしら。
というのも私はjavascriptには疎いので・・・
でもありがとうございました。もうちょっと勉強して
参考にさせて戴きます。

seltza 1998/06/23(火) 13:30:09
>残念ながら、無理っぽいです・・・(^^;)
>そのまま貼り付けただけじゃ無理なのかしら。

こんにちは。大サービスです。そのまま張り付けてみて下さい。
#ちょっとお節介だったかしら?
==
<HTML>
<HEAD>

<SCRIPT LANGUAGE="JavaScript">
<!--

function rset(form) {
  form.value = dlsp(form.value) ;
}

function hset(form) {
  var numc = form.value ;
  while ( numc.length < 10 ) numc = " " + numc ;
  form.value = numc ;
}

function dlsp(ips) {
  var s = "" + ips ;
  var outStr = "" ;
  for ( i=0 ; i < s.length ; i++ ) {
  var oneChar = s.charAt(i) ;
  if ( oneChar != " ") outStr += oneChar ;
  }
  return outStr ;
}

//-->
</SCRIPT>

<TITLE>test</TITLE>
</HEAD>

<BODY>

<FORM METHOD="POST" ENCTYPE="application/x-www-form-urlencoded" NAME="t1">
<P>年齢:<INPUT TYPE="TEXT" NAME="age" SIZE="10" MAXLENGTH="10" onFocus="rset(this.form.age)" onBlur="hset(this.form.age)" VALUE="________20">
歳<BR>
点数:<INPUT TYPE="TEXT" NAME="point" SIZE="10" MAXLENGTH="10" onFocus="rset(this.form.point)" onBlur="hset(this.form.point)" VALUE="_______100">

</FORM>

</BODY>

</HTML>
==
前回説明省きましたが、上のは「空白挿入方式」です。フォーム内でのフォントの違いのために、ブラウザによっては完全には右寄せにならないですが、とりあえずどのブラウザでも「もどき」動作はします。(^^;

デフォルトの値に対しては、「VALUE="________10"」のように適当に空白入れて下さい。「_」は半角空白。
でわ、ごきげんよう。

AKISE 1998/06/25(木) 12:46:32
[[解決]]
おおおおお!!ちゃんと右寄せになってる!
試してみました。カーソルを合わせた時に左寄せになっても
カーソル外すと右寄せにもどるんですね。
すごいやこれは!
本当にありがとうございました。大感謝!!
活用させていただきます。(^^)

[上に] [前に] [次に]