jsはテキストボックスの最後の位置に焦点を合わせます。


一般的なプログラムでは.プログラマが入力ボックスの内容の正確性を検出するときには、コンテンツの正当性を判断することによって、フォーカスボックスを決定するのが好きです。

if(obj.value==""){
   obj.focus();
   return false;
}
このように、どの入力ボックスが空かというと、その入力ボックスにフォーカスを移動します。この機能はとても便利です。しかし、小さな問題があります。
それは、Obj.focus()を入力ボックスにフォーカスを移動すると、テキストカーソル(点滅の縦線)をこの入力ボックスの最初の文字の位置に移動します。上の判断について言えば.テキストボックスに内容がない場合.obj.focusはテキストボックスに直接入力してテキストボックスをクリックせずにテキストにフォーカスを合わせることができます。
しかし、テキストボックスに内容がある場合は.この内容は合法的ではない.obj.focus()と同じようにカーソルをこのテキストボックスの最初の文字の位置に移動させます。この時はユーザーが体験しているデザイナーが気がふさいでしまいます。テキストボックスに焦点を合わせて、テキストカーソルをテキストボックスの最後に移動します。ユーザーにテキストボックスをクリックせずに直接内容を入力することができます。入力した内容は元の内容の後に追加されます。
下記のコードはこの細部を完成できます。

<script language="javascript">
function getSelectPos(obj){
var esrc = document.getElementById(obj);
if(esrc==null){
   esrc=event.srcElement;
}
var rtextRange =esrc.createTextRange();
rtextRange.moveStart('character',esrc.value.length);
rtextRange.collapse(true);
rtextRange.select();
}
</script>
このコードはユーザー体験の細部においてデザイナーに大きな助けを与えます。