พูดคุยแลกเปลี่ยน ปัญหา การเขียน JavaScript เครื่องมือ AJAX Web 2.0 AJAX Framework jQuery และ Node.JS รวมถึง Framework Express ของ Node.JS ทำงานฝั่ง Server
Moderator: mindphp
-
eange08
- PHP VIP Members
- โพสต์: 16380
- ลงทะเบียนเมื่อ: 22/12/2020 10:09 am
โพสต์ที่ยังไม่ได้อ่าน
โดย eange08 »
ติดปัญหาเวลาอัพโหลดรูปแล้วตัว process ที่เป็นวงกลมหายไป (หมายเลข 1) และถ้าอัพมากกว่า 1 ไฟล์จะไม่ขึ้นพวกชื่อรูปภาพเหมือนบรรทัดแรก (หมายเลข 2)
- screenshot-localhost-2021.01.22-16_24_14.png (34.45 KiB) Viewed 2133 times
ดูจากไฟล์ php ก็ส่งข้อมูลรูปภาพปกติ แต่พอเข้าในไฟล์ script.js แล้วขึ้น error แบบนี้
เลยไม่รู้ว่าถ้าจะต้องให้หา find('input') เจอจะต้องแก้ส่วนไหนนะคะ
- code ในส่วนบรรทัดที่ error ว่าหา find('input') ไม่เจอในไฟล์ script.js
โค้ด: เลือกทั้งหมด
progress: function (e, data) {
// Calculate the completion percentsage of the upload
var progress = parseInt(data.loaded / data.total * 100, 10);
data.context.find('input').val(progress).change(); //---บรรทัดที่ 263 หา "input" ไม่เจอ
if (progress == 100) {
data.context.removeClass('working');
}
}
- ตรงที่เป็น input type="text" เป็นส่วนการเก็บค่า process แล้วไปแสดงเป็นรูป process วงกลมค่ะ
โค้ด: เลือกทั้งหมด
var tpl = $('<li class="working"><input type="text" value="0" data-width="48" data-height="48"' +
' data-fgColor="#0788a5" data-readOnly="1" data-bgColor="#fff" /><div class="row"><div class="col-md-4"><p></p></div><div class="col-md-3 aft' + id_upload + '"></div><div class="col-md-3 download' + id_upload + '" style="text-align:left;"></div><div class="col-md-1"><span></span></div></div></li>');
}
tpl.find('input').knob();
// Listen for clicks on the icons.png to remove
tpl.find('span').click(function () {
if (tpl.hasClass('working')) {
jqXHR.abort();
}
tpl.fadeOut(function () {
tpl.remove();
});
});
-
eange08
- PHP VIP Members
- โพสต์: 16380
- ลงทะเบียนเมื่อ: 22/12/2020 10:09 am
โพสต์ที่ยังไม่ได้อ่าน
โดย eange08 »
แก้ปัญหาได้แล้วนะคะ
1. ที่ว่าตัว process ไม่ขึ้นเป็นที่ใส่คำสั่งนี้ผิดตำแหน่ง ต้องอยู่นอก loop
โค้ด: เลือกทั้งหมด
if (mode == 'crop') {
$('.id_cropbtn').show();
$('.crop_working').append($('#crop_template').html());
var tpl = $('.crop_working .cropbe4:last');
$(tpl).find('.crop_nm').html(data.files[0].name + '<br><i>Size 60x60<br><div style="color:#ff29e6;">' + formatFileSize(data.files[0].size) + '</div></i>');
} else {
var tpl = $('<li class="working"><input type="text" value="0" data-width="48" data-height="48"' +
' data-fgColor="#0788a5" data-readOnly="1" data-bgColor="#fff" /><div class="row"><div class="col-md-4"><p>vvv</p></div><div class="col-md-3 aft' + id_upload + '"></div><div class="col-md-2 download' + id_upload + '" style="text-align:left;"></div><div class="col-md-1"><span></span></div></div></li>');
}
data.context = tpl; //----ต้องใส่นอก loop เพราะต้องใช้ทั้งแสดงผลส่วนตัว process
2. กรณีที่ upload มากกว่า 1 รูปแล้วไม่แสดงข้อมูล
ตอน upload มีการเช็คค่า token ของ recaptcha แล้วดันไม่ส่ง token มาให้ตอน upload รูปที่ 2 และรูปถัดๆ ไป (คือส่งมาแค่เฉพาะตอน upload รูปแรก) จึงต้องทำการปรับ javascript ไปเรียกการ gen token ใหม่ทุกครั้งที่มีการอัพโหลดรูป
- screenshot-localhost-2021.01.23-15_03_26.png (53.95 KiB) Viewed 2117 times
-
-
- 1 ตอบกลับ
- 2675 แสดง
-
โพสต์ล่าสุด โดย kamuelxx
25/08/2017 10:22 am
-
-
- 2 ตอบกลับ
- 2220 แสดง
-
โพสต์ล่าสุด โดย jamepiyawat
26/10/2019 2:49 pm
-
-
- 0 ตอบกลับ
- 8119 แสดง
-
โพสต์ล่าสุด โดย jamepiyawat
12/11/2019 2:36 pm
-
-
- 8 ตอบกลับ
- 4165 แสดง
-
โพสต์ล่าสุด โดย tsukasaz
08/02/2023 12:53 pm
-
-
- 0 ตอบกลับ
- 4022 แสดง
-
โพสต์ล่าสุด โดย Ittichai_chupol
28/02/2020 4:39 pm
-
-
- 0 ตอบกลับ
- 3791 แสดง
-
โพสต์ล่าสุด โดย Dive Demo
07/02/2017 11:48 am
สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 14