溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何解決type=file的change事件只能執(zhí)行一次的問題

發(fā)布時間:2020-10-10 16:02:30 來源:億速云 閱讀:324 作者:小新 欄目:編程語言

如何解決type=file的change事件只能執(zhí)行一次的問題?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!

<input type='file' />設(shè)計,不管文件上傳成功與否,已添加的文件已經(jīng)被記錄了,所以不會再執(zhí)行change事件,大概原因知道了,動手做吧,如果我能清空記錄,事件不就能觸發(fā)了嗎,嘗試了一下,尼瑪,沒成功。繼續(xù)找方法,如果我替換了<input type='file' />標(biāo)簽,然后重新綁定change事件會怎么,動手試了一下,成功了,下面貼上代碼:

<form action="/api/Index/Browse" enctype="multipart/form-data" id="form_Upload" method="post">
         <input id="fileUpload" type="file" name="file" style="display:none">

</form>

$('input[id=fileUpload]').click();

var count = 0;
       $('input[id=fileUpload]').unbind().change(function () {
           $('#form_Upload').ajaxSubmit(options);

       });

var options = {
           success: function (data) {
               //$scope.orderInfo = eval(data);
               $scope.$apply(function () {
                   $scope.orderInfo = eval(data);

                   //start 為避免type=file控件的change()只能執(zhí)行一次,更換控件,重新綁定事件
                   count++;
                   $("#fileUpload").replaceWith('<input type="file" id="fileUpload" name="file" style="display:none;" title="' + count + '"/>');
                   $('#fileUpload').on('change', function () {

                       $('#form_Upload').ajaxSubmit(options);
                   });
                   //end

$http.post(url, params).success(function (data) {
  do something
                   }, function () {
  do something

});
               });
           }
       };

感謝各位的閱讀!看完上述內(nèi)容,你們對如何解決type=file的change事件只能執(zhí)行一次的問題大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI