กำหนดรูปเเบบบัตรประชาชนให้ใส่ได้เฉพาะตัวเลข javascript
ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา กำหนดรูปเเบบบัตรประชาชนให้ใส่ได้เฉพาะตัวเลข javascript
กำหนดรูปเเบบบัตรประชาชนให้ใส่ได้เฉพาะตัวเลข javascript
โดย:
Ariesboy IP:
122.154.18.xxx วันที่:
13-08-2013 เวลา:
16:40:05
<html>
<script type="text/javascript"> function autoTab2(obj,typeCheck){ /* กำหนดรูปแบบข้อความโดยให้ _ แทนค่าอะไรก็ได้ แล้วตามด้วยเครื่องหมาย หรือสัญลักษณ์ที่ใช้แบ่ง เช่นกำหนดเป็น รูปแบบเลขที่บัตรประชาชน 4-2215-54125-6-12 ก็สามารถกำหนดเป็น _-____-_____-_-__ รูปแบบเบอร์โทรศัพท์ 08-4521-6521 กำหนดเป็น __-____-____ หรือกำหนดเวลาเช่น 12:45:30 กำหนดเป็น __:__:__ ตัวอย่างข้างล่างเป็นการกำหนดรูปแบบเลขบัตรประชาชน */ if(typeCheck==1){ var pattern=new String("_-____-_____-_-__"); // กำหนดรูปแบบในนี้ var pattern_ex=new String("-"); // กำหนดสัญลักษณ์หรือเครื่องหมายที่ใช้แบ่งในนี้ }else{ var pattern=new String("__-____-____"); // กำหนดรูปแบบในนี้ var pattern_ex=new String("-"); // กำหนดสัญลักษณ์หรือเครื่องหมายที่ใช้แบ่งในนี้ } var returnText=new String(""); var obj_l=obj.value.length; var obj_l2=obj_l-1; for(i=0;i<pattern.length;i++){ if(obj_l2==i && pattern.charAt(i+1)==pattern_ex){ returnText+=obj.value+pattern_ex; obj.value=returnText; } } if(obj_l>=pattern.length){ obj.value=obj.value.substr(0,pattern.length); } } </script>
อยากให้ 2 code นี้รวมกันอะคับ
<script language="javascript"> function IsNumeric(sText,obj) { var ValidChars = "0123456789."; var IsNumber=true; var Char; for (i = 0; i < sText.length && IsNumber == true; i++) { Char = sText.charAt(i); if (ValidChars.indexOf(Char) == -1) { IsNumber = false; } } if(IsNumber==false){ alert("Only numberic value"); obj.value=sText.substr(0,sText.length-1); } } </script>
ต้องเเก้ไงอะคับ ช่วยทีนะคับ

คำแนะนำ และการใช้งาน
สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก
- ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
ความคิดเห็นที่
1
ตัวอย่าง
โค้ด
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script type="text/javascript"> function autoTab2(obj,typeCheck){ /* กำหนดรูปแบบข้อความโดยให้ _ แทนค่าอะไรก็ได้ แล้วตามด้วยเครื่องหมาย หรือสัญลักษณ์ที่ใช้แบ่ง เช่นกำหนดเป็น รูปแบบเลขที่บัตรประชาชน 4-2215-54125-6-12 ก็สามารถกำหนดเป็น _-____-_____-_-__ รูปแบบเบอร์โทรศัพท์ 08-4521-6521 กำหนดเป็น __-____-____ หรือกำหนดเวลาเช่น 12:45:30 กำหนดเป็น __:__:__ ตัวอย่างข้างล่างเป็นการกำหนดรูปแบบเลขบัตรประชาชน */ if(typeCheck==1){ var pattern=new String("_-____-_____-_-__"); // กำหนดรูปแบบในนี้ var pattern_ex=new String("-"); // กำหนดสัญลักษณ์หรือเครื่องหมายที่ใช้แบ่งในนี้ }else{ var pattern=new String("__-____-____"); // กำหนดรูปแบบในนี้ var pattern_ex=new String("-"); // กำหนดสัญลักษณ์หรือเครื่องหมายที่ใช้แบ่งในนี้ } var returnText=new String(""); var obj_l=obj.value.length; var obj_l2=obj_l-1; for(i=0;i<pattern.length;i++){ if(obj_l2==i && pattern.charAt(i+1)==pattern_ex){ returnText+=obj.value+pattern_ex; obj.value=returnText; } } if(obj_l>=pattern.length){ obj.value=obj.value.substr(0,pattern.length); } } function IsNumeric_citizen(sText,obj){ var ValidChars = "0123456789."; var IsNumber=true; var Char; for(i=0;i<sText.length && IsNumber == true;i++){ Char = sText.charAt(i); if(ValidChars.indexOf(Char) == -1){ if(Char!="-"){ IsNumber = false; } } } if(IsNumber==false){ alert("Only numberic value"); obj.value=sText.substr(0,sText.length-1); }else{ autoTab2(obj,1); } } </script> <form name="form1" method="post" action=""> <input name="mynumber" type="text" id="mynumber" onKeyUp="IsNumeric_citizen(this.value,this)"> </form> </head> <body> </body> </html>

ความคิดเห็นที่
2
เเล้วถ้าต้องการ ใช้ตั้ง 2 รูปเเบบพร้อมกันอะคับ ต้องกำหนดโค้ดช่องที่ใช้เเสดงอย่างไงหรอคับ

ความคิดเห็นที่
3
ถ้าต้องการกำหนด 3 รูปแบบ ทำไงหรอคับ มัน if ซ้อน if ไม่ได้หรอคับ

ความคิดเห็นที่
4
ทำให้จำกัดจำนวนได้หรือป่าวครับ คือเลขบัตรประชาชนมี 13 ตัว ถ้าใส่ไม่ครบให้ใส่ใหม่ ทำได้หรือป่าครับ
