以下は、私が持っているjqueryのコードの一部で、ファイルの入力と、quot;Clear File"ボタンを表示します。
var $imagefile = $('<input />').attr({
type: 'file',
name: 'imageFile',
class: 'imageFile'
});
$image.append($imagefile);
var $imageclear = $('<input />').attr({
type: 'button',
name: 'imageClear',
class: 'imageClear',
value: 'Clear File'
});
$image.append($imageclear);
このボタンをクリックすると、入力されたファイルがすべて消去されます。どのようにすれば、"Clear File"ボタンをクリックしたときに、実際にファイル入力がクリアされるようにコーディングできますか?
これなら大丈夫でしょう。
$imageClear.on('click', function() {
$imageFile.val('');
});
私もこの方法を使っていますが、イベントを新しいオブジェクトに添付したままにするためには、cloneメソッドにbool trueパラメータを追加する必要があると思いますし、コンテンツをクリアする必要もあります。
var input = $("#fileInput");
function clearInput() {
input = input.val('').clone(true);
};