jQuery DataTables ไม่ได้วาดตารางใหม่หลังจากโหลดครั้งแรก

การใช้ vanila dataTables สำหรับสิ่งพื้นฐานที่ใช้การประมวลผลฝั่งเซิร์ฟเวอร์ ฉันมีรหัส JS ต่อไปนี้: ป้อนคำอธิบายรูปภาพที่นี่

เมื่อโหลดเพจครั้งแรก ทุกอย่างเรียบร้อยดี นี่คือ json ที่ฉันได้รับจากเซิร์ฟเวอร์

ป้อนคำอธิบายรูปภาพที่นี่

จนถึงตอนนี้ทุกอย่างทำงานได้ดี ..

แต่เมื่อฉันกด "ถัดไป" สิ่งที่ฉันได้รับคือ: ป้อนคำอธิบายรูปภาพที่นี่

และไม่มีอะไรเลย... ตารางไม่รีโหลดแถวใหม่ ..

ในดีบักเกอร์ ฉันเห็นว่าเบราว์เซอร์ (dataTables) ได้ทำการร้องขออีกครั้ง และ php ของฉันกำลังส่งข้อมูลที่ถูกต้อง ป้อนคำอธิบายรูปภาพที่นี่

...ดูเหมือนว่า dataTables จะไม่รีเฟรชมุมมองตาราง ฉันต้องเรียกใช้ฟังก์ชันบางอย่างเพื่อให้รีเฟรชหรือไม่? ฉันเพิ่งติดตามตัวอย่างพื้นฐานที่สุดทางออนไลน์และไม่ได้พูดอะไรเกี่ยวกับการโทรกลับเพื่อให้งานนี้สำเร็จ


person BrownChiLD    schedule 02.03.2019    source แหล่งที่มา
comment
จะช่วยได้หากคุณเชื่อมโยงกับตัวอย่างโค้ดพื้นฐานที่คุณติดตามพร้อมกับระบุโค้ดจริงและ/หรือข้อผิดพลาดจากคอนโซล เว็บไซต์ jQuery dataable แสดงให้เห็นว่ามันค่อนข้างเรียบง่าย อาจเป็นไปได้ว่าเซิร์ฟเวอร์ของคุณส่งคืนข้อมูลที่ไม่เป็นระเบียบซึ่งทำให้สับสน หากคุณกำลังกดปุ่มถัดไป เหตุใดค่า ID จึงลดลงและไม่เพิ่มขึ้น (เรียงลำดับจากมากไปหาน้อย)   -  person SteveB    schedule 02.03.2019
comment
@steveB - ภาพหน้าจอของสคริปต์ที่วางไปแล้ว ไม่มีอะไรเพิ่มเติม ส่วนที่เหลือเป็นเพียงตาราง HTML และสคริปต์ PHP ที่ส่งออกชุดข้อมูล .. ID ลงใน NEXT เพราะใช่ 'เรียงลำดับโดย dec ฉันยังวางเอาต์พุตจากดีบักเกอร์และเป็นสคริปต์เดียวกับที่ส่งออกข้อมูลเริ่มต้นซึ่งทำงานได้ดี ( DataTable เรนเดอร์แล้ว).. มันคือ 'เฉพาะเมื่อฉันกด NEXT หรือเปลี่ยนความยาว หรือแม้แต่คลิกคอลัมน์เพื่อจัดเรียง .. ดูเหมือนว่า DataTable จะไม่แสดงผลซ้ำตามข้อมูลใหม่   -  person BrownChiLD    schedule 02.03.2019


คำตอบ (1)


คิดออกแล้ว .. ดูเหมือนว่า var จะต้องเพิ่มขึ้นหรือเปลี่ยนแปลงอย่างน้อย หากเซิร์ฟเวอร์ส่งหมายเลขการจับรางวัลเดียวกันกลับมา (=1) ตารางจะไม่โหลดซ้ำหรืออะไรบางอย่าง..
grrr... เอกสารนี้ไม่ชัดเจนนัก.. อย่างไรก็ตาม..

person BrownChiLD    schedule 02.03.2019