เทคโนโลยี

DataTables Ajax แบบส่งค่า แต่อยากให้ค่าเปลี่ยนทุกรอบที่ส่ง

เนื่องจากตัว DataTables ถ้าไม่เขียนแบบพิเศษโดยเพิ่มเป็น […]

ปรับปรุงล่าสุด 18/05/2563
DataTables Ajax แบบส่งค่า แต่อยากให้ค่าเปลี่ยนทุกรอบที่ส่ง

เนื่องจากตัว DataTables ถ้าไม่เขียนแบบพิเศษโดยเพิ่มเป็นฟังก์ชั่นเข้าไป เวลาทำงานถึงแม้เราจะบอกว่าให้ไป get จาก $(‘#element’).val() มันก็จะดึงแค่รอบเดียวนะ ถึงเราเปลี่ยนมันก็จะจำแค่ค่าที่มันดึงครั้งแรกสุด

วิธีทำก็อย่างที่บอกคือใช้ฟังก์ชั่นอัดเข้าไปใน data แทนการใส่ค่าปกติแบบนี้ แล้วก็เคนใช้ร่วมกับ jQuery นะ ใครเขียน Javascript แบบเพียวๆ ก็เอาไปแปลงกันดูเน้อ

$('#datatables').DataTable({
  ajax: {
    url: 'url/to/send/data',
    type: 'POST',
    data: function(d) {
      return $.extend({}, d, {
        status: $('#datatable_search_status').val()
      });
    }
  }
});
เขียนโดย KanexKane

นักเขียนโค้ด นักเก็บเรื่องราว และนักทดสอบ ชอบแบ่งปันสิ่งเล็ก ๆ ที่ทำให้วันธรรมดาพิเศษขึ้น

รู้จักกันอีกนิด →