สอบถามเกี่ยวกับการใช้งาน DateTimePicker
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถามเกี่ยวกับการใช้งาน DateTimePicker
สอบถามเกี่ยวกับการใช้งาน DateTimePicker
จากบทความ
https://www.ninenik.com/ปรับแต่ง_DateTimePicker_ให้รองรับ_ปี_พ.ศ._อย่างสมบูรณ์-576.html
เมื่อปรับให้แสดงปี พ.ศ. แล้ว มีวิธีการไหนที่จะกำหนดให้เลือกปฏิทินได้เฉพาะวันสุดท้ายของแต่ละเดือนไหมครับ ขอบคุณครับ

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
ความคิดเห็นที่
1
ลองกำหนดวันที่ที่อนุญาตให้เป็นวันสุดท้ายของเดือนที่เลือก แทรกประมาณนี้เข้าไป
ดูเพิ่มเติม คลิก
1 2 3 4 5 6 | onChangeMonth: function (ct,$i){ var lastDay = new Date(ct.getYear(), ct.getMonth() +1, 0).getDate(); this .setOptions({ allowDateRe:lastDay.toString() }); }, |
ดูเพิ่มเติม คลิก

ความคิดเห็นที่
2
ขอบคุณสำหรับความช่วยเหลือครับผม :-)
และขอสอบถามเพิ่มเติมหน่อยครับ... ค่า maxdate ที่เคยกำหนดไว้ มันไม่สัมพันธ์กับโค้ดที่แทรกเข้าไปเพิ่ม
คือ ปัจจุบันกำหนดให้เลือกได้ถึงปี 2565 พอเอาโค้ดไปใส่ กลายเป็นว่าปี 2566 ก็เลือกวันสิ้นเดือนในแต่ละเดือนได้ด้วย
พอจะมีวิธีแก้ไขไหมครับ ขอบคุณครับ

ความคิดเห็นที่
3
น่าจะเป็นข้อจำกัดของตัวปลั๊กอิน ถ้าต้องการใช้อยู่ ก็อาจจะลองเป็นกำหนดปีสุดท้ายที่เลือกได้เข้าไปแทน
โดยไม่ต้องกำหนด maxDate ใช้เป็น yearEnd จะใช้เป็นตัวแปร หรือกำหนดค่าไปเลยก็ได้ แล้วแต่จะประยุกต์
>>> อัพเดท >>> 03-03-2023
------------------------------------------
หรือจะใช้เป็นวิธีการตรวจสอบแบบนี้แทนดู คือถ้าปีที่เลื่อนดูเกินปีที่กำหนด ก็ไม่สามารถเลือกวันที่ได้
โดยไม่ต้องกำหนด maxDate ใช้เป็น yearEnd จะใช้เป็นตัวแปร หรือกำหนดค่าไปเลยก็ได้ แล้วแต่จะประยุกต์
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | onShow: function (ct,$i){ let lastDay = new Date(ct.getYear(), ct.getMonth() +1, 0).getDate(); this .setOptions({ yearEnd:2023, allowDateRe:lastDay.toString() }); }, onChangeMonth: function (ct,$i){ let lastDay = new Date(ct.getYear(), ct.getMonth() +1, 0).getDate(); this .setOptions({ yearEnd:2023, allowDateRe:lastDay.toString() }); }, |
>>> อัพเดท >>> 03-03-2023
------------------------------------------
หรือจะใช้เป็นวิธีการตรวจสอบแบบนี้แทนดู คือถ้าปีที่เลื่อนดูเกินปีที่กำหนด ก็ไม่สามารถเลือกวันที่ได้
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | onShow: function (ct,$i){ let lastDay = new Date(ct.getYear(), ct.getMonth() +1, 0).getDate(); let currentYear = new Date(ct).getFullYear(); this .setOptions({ allowDateRe:(currentYear<2024)?lastDay.toString(): '\s' }); }, onChangeMonth: function (ct,$i){ let lastDay = new Date(ct.getYear(), ct.getMonth() +1, 0).getDate(); let currentYear = new Date(ct).getFullYear(); this .setOptions({ allowDateRe:(currentYear<2024)?lastDay.toString(): '\s' }); }, |

ความคิดเห็นที่
4
ได้ลองทดสอบแล้ว สามารถใช้ได้ทั้ง 2 รูปแบบเลยครับ ขึ้นอยู่กับลักษณะงานที่จะเลือกใช้
ขอบคุณมาก ๆ เลยครับผม :-)
ขอบคุณมาก ๆ เลยครับผม :-)

ขอบคุณทุกการสนับสนุน
![]()