ลิมิต จำนวน checkbox ด้วย jquery

มี checkbox อยู่มากมาย แต่ว่าต้องการให้เลือกได้ไม่เกินจำนวน ตามที่เรากำหนด เขียนโค้ดอย่างไร มาดูกัน

ส่วนนึงของงานที่ทำวันนี้คือ ต้องจำกัดไม่ให้ user คลิกเลือก เกินกว่าที่เรากำหนด สมมุติผมกำหนดให้เลือกได้แค่ 20 อัน เราก็เขียน javascript บน jQuery ได้ดังนี้

var limit=20; $(":checkbox[name$='email[]']").bind("click",function() { var result = ($(":checkbox[name$='email[]']:checked").size() <= limit); if( result ){ ; }else{ alert("เลือกได้ " + limit + "รายการเท่านั้น") } return result; });

 ตั้งค่าจำนวนได้ที่ บรรทัดที่ 1 เลยนะครับ แล้วมีข้อสังเกตุที่บรรทัดที่ 2 และ 3 ที่ต้องเปลี่ยนชื่อของ checkbox ด้วยครับ จากตัวอย่างผมใช้เป็น email[] ถ้าคุณตั้งชื่อ checkbox ว่าอะไรก็เปลี่ยนไปตามนั้นเลยครับ

ส่วนนี้คือการป้องกันจากส่วนของ user แต่เราต้องไม่ลืม กันส่วนที่เกิดจาก hacker ด้วยนะครับ เช่น ถ้าผู้ใช้ไม่ได้เปิด javascript จุดนี้ก็ไม่ทำงานแล้ว ก็ต้องไม่ลืมไปเช็คด้วย php อีกทีตอนรับค่าด้วยครับ

อ้อ ลืมบอก ว่าผมไม่ได้คิดเองนะครับ แต่ก็จำไม่ได้เช่นกันว่าเอามาจากเว็บใดครับ

และอีกเรื่องที่เน้นคือ ต้องบน jQuery นะครับ ถ้าเป็น javaScript pureเลยไม่ทำงานครับ

เท่านี้ก็เรียบร้อย


เขียน: 2010-04-23 00:02:34 แก้ไข : 2010-04-23 00:17:37 อ่าน : 2519
tag : จำกัดจำนวน checkbox,limit select checkbox,limit จำนวน checkbox,limit checkbox,จำกัดการเลือก