Index |
HOME > プログラムTOP > JavaScript |
||||||||||||||||||||||||||||||||||||
テキスト・オブジェクト
JavaScript の実用的な Tips です。ここでは、フォーム要素のうち、テキスト・オブジェクトを扱います。テキスト・オブジェクトは、ユーザーのキーボード入力を受け付けるためのオブジェクトです。これには、入力テキストを表示する text, textarea, さらに入力文字を保護する password があります。また、ボタンとテキストの組み合わせである file オブジェクトもここで扱います。ボタン系オブジェクトについては前のページで扱っています。
sasaraan programming ![]() Exposition ■Text
text オブジェクトは、短数行のテキスト入力を受け付けることができます。このオブジェクトのメソッドとプロパティには以下のようなものがあります。これらは、他のテキスト・オブジェクトにも共通して定義されています(一部例外あり)。
下記のサンプルでは、表示ボタンを押すと文字列を表示し、選択ボタンを押すと二つのテキストを交互に選択状態にします。 // JavaScriptソース
document.Form1.Text1A.defaultValue = "Text オブジェクトは、";
document.Form1.Text1B.defaultValue = "一行テキストを受け付けます。";
var bFocused = true;
function Button1_Click() {
if (bFocused) {
document.Form1.Text1A.select();
} else {
document.Form1.Text1B.select();
}
bFocused = !bFocused;
}
<!-- HTMLソース -->
<form name="Form1" style="margin:1ex;">
<input type="text" name="Text1A" size="32"/>
<input type="text" name="Text1B" size="32"/>
<input type="reset" value="表示" />
<input type="button" name="Button1" value="選択" onclick="Button1_Click()"/>
</form>
■Textarea
textarea オブジェクトは複数行のテキストを受け付けます。文字列を設定する際、改行にはエスケープ文字 '\n' を使用します。また、ブラウザによって、defaultValue プロパティが正常に動作しないブラウザがありますので注意が必要です。ちなみに、textarea オブジェクトは、親オブジェクトのフォントサイズを継承しないブラウザもあるので、タグ内で再設定しておくことをおすすめします。
下記のサンプルは、表示ボタンで改行つきの文字列を表示し、選択ボタンで表示文字列を選択、クリアボタンで文字列を消去します。 // JavaScriptソース
var str = "Textarea は、\n複数行のテキストを\n表示するオブジェクトです。";
function Button2A_Click() { document.Form2.Text2.value = str; }
function Button2B_Click() { document.Form2.Text2.select(); }
function Button2C_Click() { document.Form2.Text2.value = ""; }
<!-- HTMLソース -->
<form name="Form2" style="margin:1ex;">
<textarea name="Text2" cols="30" rows="3" style="font-size:100%;"></textarea>
<input type="button" name="Button2A" value="表示" onclick="Button2A_Click()"/>
<input type="button" name="Button2B" value="選択" onclick="Button2B_Click()"/>
<input type="button" name="Button2C" value="クリア" onclick="Button2C_Click()"/>
</form>
■Password
password オブジェクトでは、入力した文字が特定の記号と成って表示されます。記号はブラウザにより異なりますが、いずれも value プロパティで正確な入力文字を取得することができます。
以下のサンプルは、パスワード "guest" を入力すると "OK" 、それ以外は "Wrong" の文字をダイアログで表示して、間違った文字列を選択状態にします。 また、未入力の時はメッセージを表示してフォーカスをオブジェクトに設定しています。 // JavaScriptソース
var sPW = "guest";
function CheckPW() {
var sInput = document.Form3.PW3.value;
if (sInput == "") {
alert("Empty !");
document.Form3.PW3.focus();
} else if (sInput == sPW) {
alert("OK !");
} else {
alert("Wrong !");
document.Form3.PW3.select();
}
}
<!-- HTMLソース -->
<form name="Form3" style="margin:1ex;">
<input type="password" name="PW3" value="" size="8"/>
<input type="button" value="チェック" onclick="CheckPW()"/>
</form>
■File
file オブジェクトは、ファイル名を表示するテキスト部と、ファイルを指定するダイアログボックスを開くためのボタン部分からなります。ダイアログボックスの外観は、通常は OS によって異なります。また、file オブジェクトでは defaultValue プロパティは使用できません。value プロパティも表示できないブラウザがあるので注意が必要です。
下記のサンプルでは、確認ボタンを押すと、value プロパティの値を取得してダイアログに表示します。 // JavaScriptソース
function Button4_Click() {
if (document.Form4.File4.value == "") {
alert("何も入力されていません。");
document.Form4.File4.focus();
} else {
alert(document.Form4.File4.value);
}
}
<!-- HTMLソース -->
<form name="Form4" style="margin:1ex;">
<input type="file" name="File4" size="60"/>
<input type="button" name="Button4" value="確認" onclick="Button4_Click()"/>
</form>
|
|||||||||||||||||||||||||||||||||||||
www.sasaraan.net |
(c) morijoh |
||||||||||||||||||||||||||||||||||||