2

ファイル入力を使用してファイルをロードできるフォームがあります。ユーザーがアップロード アイテムを削除できるようにしたいのですが、解決できませんでした。これが私がこれまでにやろうとしたことです:

<form action="insert.php" method="POST" align="right" id="post_form">
 <input type="file" id="upload_file" onChange="display()">
 <div id="show_button" onClick="remove_pic()">  remove </div><br>
</form>


function remove_pic() {
  alert('check');
  var file_loaded = document.getElementById("upload_file");
  file_loaded = null; // here i try to remove the object
}
4

1 に答える 1

1

JSFiddle を介してコードを実行し、Chrome 開発コンソールを確認すると、「関数が定義されていません」というエラー メッセージが表示され続けました。

直接呼び出しようとしている関数をグローバル スコープに明示的に配置すると、定義済みとして認識されることがわかりました。また、null の代わりに空白文字列を使用し、「.value」プロパティへの変更を「file_loaded」変数に追加することもできます。

それ以外の

function remove_pic() {
  alert('check');
  var file_loaded = document.getElementById("upload_file");
  file_loaded = null; // here i try to remove the object
}

試す

window.remove_pic = function() {
  alert('check');
  var file_loaded = document.getElementById("upload_file");
  file_loaded.value = ""; // here i try to remove the object 
};

JSFiddle の例: http://jsfiddle.net/xu6SD/1/

于 2013-04-21T18:39:50.930 に答える