セキュリティ上の理由から、input type="file" の値を設定できないことはわかっています...
私の問題は次のとおりです。
input type="file" のスタイルを設定する必要があったため、ボタンを作成してファイル入力を非表示にしました。お気に入り:
<a href="#" onclick="$('input[name="photo1"]').click(); return false;" id="photo1-link"></a>
<input type="file" name="photo1" class="fileInput jqtranformdone validate[required]" id="photo1" />
これらは、ajax を介して送信するとアクセス拒否エラーが発生する IE を除くすべてのブラウザーでうまく機能します。
ajaxSubmit jquery プラグイン (malsup.com/jquery/form/) を使用しています。
それで、しばらく読んだ後、私はやろうとしました:
var photo1Val = $('#photo1').val();
var clone1 = $('#photo1').clone().val(photo1Val);
$('#photo1').remove();
clone1.appendTo('form');
console.log(photo1Val) //prints the right value C:/fakepath/blablabla.jpg
$('form').ajaxSubmit(options);
問題は、この後 $('#photo1') の値が空になることです...これを回避する方法はありますか?
ありがとう