我有一個表單,其中包括filefield上傳一些文件。 有時會發生什麼,首先,我從瀏覽器中選擇一個文件上傳,但後來我意識到我不想再上傳它了。我怎樣才能讓它再次變爲空? 是否這樣,一旦這個領域填補它不能恢復回空?如何在FileField Django Form中選擇以前的東西?
在此先感謝
我有一個表單,其中包括filefield上傳一些文件。 有時會發生什麼,首先,我從瀏覽器中選擇一個文件上傳,但後來我意識到我不想再上傳它了。我怎樣才能讓它再次變爲空? 是否這樣,一旦這個領域填補它不能恢復回空?如何在FileField Django Form中選擇以前的東西?
在此先感謝
這可以用JavaScript來實現。
報價Clear upload file input field with jQuery後從electrictoolbox.com:
功能reset_html(ID){ $( '#' + id)的的.html($( '#' + id)的的.html()); }
$(文件)。就緒(函數(){
var file_input_index = 0; $('input[type=file]').each(function() { file_input_index++; $(this).wrap('<div id="file_input_container_'+ file_input_index+'"></div>'); $(this).after('<input type="button" value="Clear" onclick="reset_html(\'file_input_container_'+ file_input_index+'\')" />'); });
});
如果您嘗試發佈未經驗證的表單,則當您重新呈現表單時,文件字段將爲空。
詳見本期更多解釋.. Django Form File Field disappears on form error
我下面的作品。添加一個清除按鈕到您的HTML
<input type="submit" name = "submit-clear" value="clear file">
然後在您的視圖處理使用此按鈕..
if 'submit-clear' in request.POST:
return HttpResponseRedirect('')
這應該清除任何filefields也將刪除用戶所做的任何其他設置,如果你想要保留其他設置並刪除文件字段,然後確保表單不會以某種方式驗證,以便再次呈現。
感謝您的解決方案,實際上我使用JavaScript的參考相同http://gusiev.com/2009/04/clear-upload-file-input-field/ – Karan 2012-07-27 09:19:44