var Items_sub = []; $(".parent").each( (i,e)=>{ $(e).find("input").each( (j, inp)=>{ Items_sub[i][inp.name] = inp.value; }); });
<!DOCTYPE html> <html> <body> <div class="parent" data-type="type1"> <input name="sub[0]" data-date="2020-08-04" value="1"> <input name="sub[1]" data-date="2020-08-05" value="2"> <input name="sub[1]" data-date="2020-08-06"value="3"> </div> <div class="parent" data-type="type2"> <input name="sub[0]" data-date="2020-08-04" value="4"> <input name="sub[1]" data-date="2020-08-05" value="5"> <input name="sub[1]" data-date="2020-08-06"value="6"> </div> <div class="parent" data-type="type3"> <input name="sub[0]" data-date="2020-08-04" value="7"> <input name="sub[1]" data-date="2020-08-05" value="8"> <input name="sub[1]" data-date="2020-08-06"value="9"> </div> <!-- ระวัง name ซ้ำกัน...จะส่งผลให้ได้รับข้อมูลเพี้ยนเมื่อใช้ AJAX POST --> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script> var Items_parent = []; // ประกาศเป็น array แต่หลังจากใช้ name index จะแปลงร่างเป็น object $(".parent").each(function(i, e){ // element ใส่เป็น parameter 2 var Items_sub = {}; $(e).find("input[name^='sub']").each(function () { // เอาเฉพาะ input ของแต่ละ type var val = $(this).val(); var dateData = $(this).attr('data-date'); Items_sub[dateData] = val; }); Items_parent[$(this).attr('data-type')] = Items_sub; // อาร์เรย์ Items_parent เปลี่ยนเป็น object }); console.log(Items_parent); // PhrayaDev@2020 </script> </body> </html>
เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง