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

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

ส่วนนึงของงานที่ทำวันนี้คือ ต้องจำกัดไม่ให้ 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เลยไม่ทำงานครับ

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

Create: Modify : 2010-04-23 00:17:37 Read : 6239 URL :