2017-03-01 64 views
0

我想用jquery清除我上傳的文件。我試過但不工作。在jquery/javascript中清除我的輸入

var $el = $('#specialImg1'); 
 
$el.wrap('<form>').closest('form').get(0).reset(); 
 
$el.unwrap();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form> 
 
    <input id="specialImg1" type="file" name="specialImg" onchange="previewSpecialImage(1);" width="3000" height="2500" required="" class="user-error" aria-invalid="true"> 
 
</form>

+0

清除它如何以及何時? – BenM

+0

當你已經有一個'form'元素時,爲什麼要添加一個'form'元素?也就是說,'$ el.closest('form')[0] .reset()'應該可以正常工作。你不能在HTML中嵌套表單,所以這可能是它不起作用的原因。 –

回答

1

它已經工作。嘗試通過在控制檯中登錄。相反,你所寫的方法,你可以簡單地使用$('#specialImg1').val('');

<!DOCTYPE html> 
 
<html> 
 

 
<head> 
 
    <script> 
 
     function clearit() { 
 
      var $el = $('#specialImg1'); 
 
      $el.wrap('<form>').closest('form').get(0).reset(); 
 
      $el.unwrap(); 
 
      console.log($("#specialImg1").val()); 
 
     } 
 
     function upload(){ 
 
      console.log($("#specialImg1").val()); 
 
     } 
 
    </script> 
 
</head> 
 

 
<body> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
    <form> 
 
     <input id="specialImg1" type="file" name="specialImg" width="3000" height="2500" required="" class="user-error" aria-invalid="true" onchange="upload()"> 
 
    </form> 
 
    <button onclick="clearit()">clearit</button> 
 
</body> 
 

 
</html>