JavaScript入門講座

Home > formオブジェクト > fileオブジェクト

fileオブジェクト

fileオブジェクトはファイルの情報を提供したり、ファイルの設定や操作を行うオブジェクトです。

ファイルの値を取得する方法

ファイルの値を取得する方法は、フォーム内のfileタグのname属性に名前を指定することにより以下の構文でファイルパスを取得することが可能となります。


    document.フォーム名.ファイル名.value
							

以下のサンプルではフォームのname属性を指定して、ファイルパスを表示しています。


<html>
<head>
<title>JavaScript file</title>
<script type="text/javascript">
function dispFile(){
	var fName  = document.fm.upFile.value;
	alert('選択したファイルの値は' + fName + 'です' );
}
</script>
</head>
<body>
<form name="fm">
選択したファイルのパスを表示<br>
<input type="file" name="upFile" value="upFile"><br>
<input type="button" value="確認" onclick="dispFile()">
</form>
</body>
</html>						
							

前述の方法以外にelements配列を使用してindex番号を指定することにより取得する方法もあります。index番号はフォーム内の各要素の宣言順に0から順番に割り当てられます。

なお、フォーム内の要素数はlengthプロパティにより取得できるので、lengthプロパティにより数を取得してfor文を使用して順次取得します。


    document.フォーム名.elements[index番号].value
							

以下のサンプルではelements配列を使用してファイルパスを表示しています。


<html>
<head>
<title>JavaScript file</title>
<script type="text/javascript">
function dispFile(){
 
	var f = document.fm;
 
	for(var i = 0 ; i < f.elements.length ; i++){
		if(f.elements[i].type=='file'){
			alert(i + '番目の値は' + f.elements[i].value + 'です' );
		}
	}	
 
}
</script>
</head>
<body>
<form name="fm">
選択したファイルのパスを表示<br>
<input type="file" name="upFile1" value="upFile1"><br>
<input type="file" name="upFile2" value="upFile2"><br>
<input type="file" name="upFile3" value="upFile3"><br>
<input type="file" name="upFile4" value="upFile4"><br>
<input type="file" name="upFile5" value="upFile5"><br>
<input type="button" value="確認" onclick="dispFile()">
</form>
</body>
</html>
					

プロパティの設定方法


    document.フォーム名.ファイル名.property
    document.フォーム名.elements[index番号].property
							

以下はfileオブジェクトのプロパティの一覧です。

プロパティ名内容
nameオブジェクト名
valueオブジェクト内の値
typeオブジェクトのタイプ

メッソッドの設定方法


    document.フォーム名.ファイル名.method()
    document.フォーム名.elements[index番号].method()
							

以下はfileオブジェクトのメソッドの一覧です。

メソッド名内容
toString()オブジェクトを文字列に変える
blur()フォーカスを移動する
focus()フォーカスを与える
valueOf()オブジェクトの値を返す
handeleEvent()イベント取扱者を特定する
toSource()オブジェクトの値を文字列で返す
関連メンバ内容
Textテキストボックス
Textareaテキストエリア
Select選択・リストボックス
Checkboxチェックボックス
Radioラジオボタン
Buttomボタン
Submit送信ボタン
Resetリセットボタン
Hidden隠しフィールド
Passwordパスワード入力ボックス