您好,登錄后才能下訂單哦!
如何解決type=file的change事件只能執行一次的問題?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
<input type='file' />設計,不管文件上傳成功與否,已添加的文件已經被記錄了,所以不會再執行change事件,大概原因知道了,動手做吧,如果我能清空記錄,事件不就能觸發了嗎,嘗試了一下,尼瑪,沒成功。繼續找方法,如果我替換了<input type='file' />標簽,然后重新綁定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()只能執行一次,更換控件,重新綁定事件
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
});
});
}
};
感謝各位的閱讀!看完上述內容,你們對如何解決type=file的change事件只能執行一次的問題大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。