WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:input type=file について

0:[投稿] popo [2002/07/31 15:57 ][環境:WIN+IE WIN系+Java]

皆さんお疲れ様です。

質問です。下記の様にjavascriptで処理をしたとき、HTMLのinputタグのfile属性にうまくデータが渡らないのですが・・・・

<javascriptのソース>
function in(name,value){
 if((value.length < 1) && (value.length != null)){
   return false;
 }

 for(i = 0; i < value.length; i++){
   var IthMoji = value.substring(i,(i + 1));
            
   if(IthMoji.match(/[”]/)){
   alert("正しくデータを入力してください。");
   document.Form1.elements[name].value = "";
   return false;
   break;
 }
}


<htmlのソース>
<input type="file" name="ファイル名" value=""  onBlur="in(this.name,this.value);">

2バイトの”が文字列にあったら、フィールドの値を消したいのですが、うまくいきません。ご存知の方いらっしゃいますか?

また、上記で出来ないのであれば、onkeypress等で、”を入力できないようにしたいのですが・・・・
いろいろ試したのですが、出来なくて、困っています。

すみません。ご存知の方いらっしゃいましたら、教えてください。
m(-_-)m


1:[回答] ween [2002/07/31 17:13 ]

まず、 in は予約語なので関数や変数の名前には使えません。
それから、 <input type=file> の value プロパティは
セキュリティ上の理由で readOnly になっている実装がほとんどです。

比較的最近の実装が対象なら

 var el = document.Form1.elements[name];
 el.parentNode.replaceChild( el.cloneNode(false), el );

あたりで何とかできると思います。


2:[完了] popo [2002/07/31 17:38 ]

weenさまありがとうございます。

inはBBSに乗せるため、テキトーにつけてしまいました。
予約語ってこと忘れてました。すみません。

input typeはreadOnlyですか・・・
うーん。

>比較的最近の実装が対象
少しテストしましたが、この環境では駄目っぽいです。
しかし自分の確認ミスかもしれないので、もうちょっと頑張って見ます。


3:[完了] ween [2002/07/31 18:00 ]

>>0 が元のコードをそのままペーストしたものであるなら、

> if(IthMoji.match(/[”]/)){

この if 文が } で閉じられていないんですが、それは大丈夫でしょか?


4:[完了] ツッコミ屋 [2002/08/01 04:16 ]

んっ?見間違いでは?

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World