input輸入框file類型第二次不觸發onchange事件的解決辦法,簡單有效

  在網上看了不少辦法,如今將網上大部分說法總結以下:ajax

       網上說法:spa

         緣由:選擇一次後onchange事件沒有綁定到input標籤上;插件

         解決辦法:拷貝一份input標籤的副本,每次選擇後對原input標籤進行替換。code

  

  我以爲網上給出的辦法每次都要作回調,太麻煩了。應該還有更簡單的作法。事件

 

  探究input輸入框file類型第二次不觸發onchange事件的根本緣由,能夠知道:(1) 原來是 ajaxFileUpload 插件形成的,它會把原來的file元素替換成新的file元素,因此以前綁定的change事件就失效了。(2)上傳時,當第二次點擊同一個文件,因爲value值沒有發生變化,沒法觸發change/onchange事件。input

 

  因此,問題的關鍵是input 的value 值!!!file

 

  個人作法:總結

    只須要在選擇一次後將input標籤的value屬性置爲空便可,即$('#inputId').val(''),簡單粗暴有效。文件

相關文章
相關標籤/搜索