tl; dr : Modern tarayıcılar için sadece
input.value = '';
Eski cevap:
Peki ya:
input.type = "text";
input.type = "file";
Hala bu mu anlamak zorunda değil çalışmak webkit .
Her neyse, bu IE9>, Firefox ve Opera ile çalışır.
Webkit ile ilgili durum, onu dosyaya geri döndürememem gibi görünüyor.
IE8 ile durum, bir güvenlik istisnası atmasıdır.
Düzenleme:
Webkit, Opera ve firefox için bu çalışır, ancak:
input.value = '';
(bu öneriyle yukarıdaki yanıtı kontrol edin)
GC'ye ihtiyaç duymadan bu çapraz tarayıcıyı yapmanın daha temiz bir yolunu bulup bulamayacağımı göreceğim.
Düzenleme2:
try{
inputs[i].value = '';
if(inputs[i].value){
inputs[i].type = "text";
inputs[i].type = "file";
}
}catch(e){}
Çoğu tarayıcıyla çalışır. IE <9 ile çalışmıyor, hepsi bu.
Firefox 20, chrome 24, opera 12, IE7, IE8, IE9 ve IE10'da test edilmiştir.