亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 JavaScript 中按文件名稱拖放排序

在 JavaScript 中按文件名稱拖放排序

湖上湖 2023-11-12 14:57:06
我想按文件名稱對文件進行排序,然后處理下一個代碼。以下是我上傳的文件名:DSC08703-3.jpg、DSC08701-2.jpg、DSC08704-4.jpg我在下面也提到了一個技巧。$('#file').change(function () {        var pic1="";        var count=1;        var Allowedimages=0;        var uploadedcount=0;            filesup = event.target.files;        if (this.files.length > 0) {            haveToUpload=this.files.length;            $.each(filenames, function (i, v) {                var reader = new FileReader();                remainToUpload = parseInt(haveToUpload)-parseInt(i);                var proceedImg = remainToUpload;                reader.onload = function (e) {                    var img = new Image();                    img.src = e.target.result;                    img.onload = function () {                    var canvas = document.createElement("canvas");                    var value = 100;                    var newsize=0;                                            var ctx = canvas.getContext("2d");                        ctx.clearRect(0, 0, canvas.width, canvas.height);                        canvas.width = img.width;                        canvas.height = img.height;                        ctx.drawImage(img, 0, 0, img.width, img.height);                        var pic1=canvas.toDataURL("image/jpeg",0.80);                        var x=1;                                                while (x <= 60) {                            var filebd=$('#fileBD'+x).val();                            if(filebd==NoImageSrc) {                               break;                            }                            x++;                        }我嘗試了以下解決方案但不起作用。
查看完整描述

2 回答

?
青春有我

TA貢獻1784條經驗 獲得超8個贊

從圖像名稱中獲取數字并將該數字用作框值。


$.each(this.files, function (i, v) {

 var tno = 0;

 var parts = v.name.split("-");

 var result = parts[parts.length - 1];

 var tno = result.toString().split(".")[0];

    var x=1;//parseInt(count)+parseInt(i)+parseInt(1);

    var xx = 1;

    if(tno>0)  x = tno;

    else x = xx;


    x++;

    xx++;

]);


查看完整回答
反對 回復 2023-11-12
?
牛魔王的故事

TA貢獻1830條經驗 獲得超3個贊

首先,仔細檢查這this.files不是文件接口數組(https://developer.mozilla.org/en-US/docs/Web/API/File

如果是這種情況,您必須像這樣映射文件名:

var filenames = this.files.map(x => x.name);

至于對字符串數組進行排序:

var ascending = (a, b) => a > b ? 1 : -1;
filenames.sort(ascending);
// console.log(filenames);


查看完整回答
反對 回復 2023-11-12
  • 2 回答
  • 0 關注
  • 231 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號