参照したファイルを他のinput type="file"へコピーする方法を教えてください。


<input type="file" name="docomo" size="60" class="form">
<input type="file" name="ezweb" size="60" class="form">
<input type="file" name="softbank" size="60" class="form">

画像をアップロードするphpがあり
一つの画面で3キャリアごとに別々のファイルをアップすることが可能なのですが
ほとんどの場合、全て同じ画像ファイルで大丈夫なので
name="docomo"で参照したファイルをname="ezweb"とname="softbank"に反映させたいのですが
コピーボタンを作るにはどうしたらよいでしょうか?

ご教授いただけると幸いです。

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2010/04/15 18:42:33
  • 終了:2010/04/22 18:45:02

回答(2件)

id:koriki-kozou No.1

koriki-kozou回答回数480ベストアンサー獲得回数792010/04/15 19:24:56

ポイント35pt

WEBサイトにアクセスするだけでファイルを抜き取られたら大問題

そのためアップロードするファイルの情報はjavascript等でコントロールできない仕組み


全部同じにする場合用の指定を出来るようにしておいてサーバ側でコピーするようにするしかない

input type="file" name="all" size="60" class="form"


サーバー側をどのような言語で作っているのかが判らないので今はここまで

id:xptree

回答ありがとう御座います。

参考にさせて頂きます。

2010/04/16 07:55:39
id:Bombastus No.2

ホーエンハイム回答回数409ベストアンサー獲得回数522010/04/15 21:01:28

ポイント35pt

フォームのfileタイプのvalue属性は参照しか許されていないため、ご質問の要件に合うスクリプトは作ることができません。

そこで代替案ですが、「コピー」ボタンが押下されたときにはezweb,softbankのダイアログは使えなくするというのはどうでしょうか。これなら余計なトラフィックが発生することもなく、サーバサイドでezweb,softbankの存在をチェックすることでコピーか否かの判断が付くと思います。


jQueryを使ったサンプル・スクリプトを以下に掲げます。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="jQurtyの場所/jquery.js"></script>
<script type="text/javascript"><!--
function fcopy() {
	$("#ezweb").css("backgroundColor", "grey");
	$("#ezweb").attr("disabled", "disabled");
	$("#softbank").css("backgroundColor", "grey");
	$("#softbank").attr("disabled", "disabled");
}
function freset() {
	$("#ezweb").css("backgroundColor", "white");
	$("#ezweb").removeAttr("disabled");;
	$("#softbank").css("backgroundColor", "white");
	$("#softbank").removeAttr("disabled");;
}
// --></script>
</head>
<body>
<form name="myform" action="">
DoCoMo:<input type="file" id="docomo" name="docomo" size="60" class="form" /><br />
EZweb:<input type="file" id="ezweb" name="ezweb" size="60" class="form" /><br />
SoftBank:<input type="file" id="softbank" name="softbank" size="60" class="form" /><br />
<input type="button" value="コピー" onClick="fcopy();" />
 <input type="button" value="リセット" onClick="freset();" />
</form>
</body>
</html>
id:xptree

回答ありがとう御座います。

参考にさせて頂きます。

2010/04/16 07:55:43

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません