รบกวนช่วยดูโค้ดjavascript เกี่ยวกับการตรวจสอบหมายเลขโทรศัพท์มือถือว่าถูกต้องหรือไม่ค่ะ
รูปแบบที่ให้ใส่แล้วคั่นด้วยคอมม่า เป็นแบบไหนครับ....แล้วต้องใส่กี่หมายเลข ยก ตย.ที่ถูกต้องมาหน่อย จะเอาไปลอง test
แบบนี้ 086326xxxx, 082716xxxx
แล้วทำไมให้กรอกเยอะจัง แถมใช้ textarea ด้วย
ประวัติการแก้ไข 2013-02-21 10:27:58
Date :
2013-02-21 10:16:06
By :
apisitp
เป็นแบบนี้ค่ีะ
Date :
2013-02-21 10:27:00
By :
annaann18
ผมไปอ่าน Go to : ขอโค้ดเช็คเบอร์โทรศัพท์ ว่าขึ้นต้นด้วย 08 หรือป่าวอ่ะค่ะ ลองหลายวิธีแล้วม่ายได้เลย อันนี้มา
แล้วผมลองแบบนี้
Code (PHP)
//var patt = /^[0]{1}[8,9]{1}[0-9]{7,}.split(',')/
var patt = /^[0]{1}[8]{1}[0-9]{7,}/
มันก็โอเคนะ
มันก็แยกเลข 2 ชุดหลังคอมม่าคั่นออกจากกันได้ แต่
ถ้ากรอก 0863263333,0893258888 ผล หมายเลขถูกต้อง
แต่ถ้ากรอก 0863263333,0113258888 ผล หมายเลขถูกต้อง แต่เลขชุดหลังมันผิดไม่ฟ้อง
แต่ถ้ากรอก 0863263333,038102010 ผล หมายเลขถูกต้อง แต่มันฟ้อง 038102010 ไม่ครบ 10 หลัก และเลขชุดหลังมันก็ไม่ฟ้อง
แบบนี้ยาก...ผมไปต่อไม่ถูกล่ะ
นึกได้แค่ว่า
ถ้ากรอกเลขมา ต้องแยกเลขออกจากกันก่อน จะมีเลขกี่ชุดก็ต้องแยกออก จากนั้นเข้ามามาตรวจสอบ...ทีละชุด ๆ
รอดูพี่ ๆ น้อง ๆ ท่านอื่นมาแนะนำครับ
ประวัติการแก้ไข 2013-02-21 10:52:40
Date :
2013-02-21 10:42:07
By :
apisitp
Code (JavaScript)
var patt = /^[0]{1}[8,9]{1}[0-9]{7,}.split(',')/
อันนี้ เขียนผิด ครับ
ผมไม่อยากเขียนโค้ดให้ทั้งหมด อยากให้ได้ศึกษาครับ
แต่ผมเขียน pattern มาให้
อันนี้ จะตรวจสอบหมายเลข ขึ้นต้นด้วย 08 หรือ 09 และมี 10 ตัว ตามที่ท่าน จขกท ต้องการ ครับ
Code (JavaScript)
/^(08|09)[0-9]{8}$/
Date :
2013-02-21 11:02:58
By :
triplea
Code (JavaScript)
function checkTel(){
var tel=document.getElementById('telephone').value;
var tel=tel.replace(/\,$/,"");
var tel=tel.split(",");
var telLen=tel.length;
for(i=0;i<telLen;i++){
var telNum=tel[i].length;
if(telNum!=10){
alert('หมายเลขนี้ '+tel[i]+' ไม่ครบ 10 หลักค่ะ'); return false;
}else{
var part=/^(08|09)[0-9]{8}$/
if(!tel[i].match(part)){
alert('หมายเลข.'+tel[i]+' นี้ไม่ถูกต้องค่ะ'); return false;
}
}
}
}
Date :
2013-02-21 11:12:10
By :
somparn
อ้าวเวรกำ ไม่เห็นกระทู้ของท่าน TripleA เขียนไว้ T_T
Date :
2013-02-21 11:13:45
By :
somparn
ลองทำนุ้นนี้ดู ตอนนี้ได้ล่ะค่ะ ขอบคุณทุกคำแนะนำมากน่ะค่ะ
Code (PHP)
<script type="text/javascript">
function checkTel(){
var tel=document.getElementById('telephone').value;
var tel=tel.replace(/\,$/,"");
var tel=tel.split(",");
var telLen=tel.length;
for(i=0;i<telLen;i++){
var part=/^(08|09)[0-9]{8}$/
if(!tel[i].match(part)){
alert('หมายเลข '+tel[i]+' นี้ไม่ถูกต้องค่ะ กรุณาใส่ Phone Number ด้วยตัวเลขที่ติดกัน \r\n เริ่มต้นด้วย 08 หรือ 09 และคั่นด้วยคอมม่า (,) เท่านั้น!!'); return false;
}
/*else{
var telNum=tel[i].length;
if (telNum < 10){
alert('หมายเลขนี้ '+tel[i]+' ไม่ครบ 10 หลักค่ะ'); return false;
}
if (telNum >= 11){
alert('หมายเลขนี้ '+tel[i]+' เกิน 10 หลักค่ะ'); return false;
}
}*/
}
}
function checkNum(){
var tel=document.getElementById('telephone').value;
var tel=tel.replace(/\,$/,"");
var tel=tel.split(",");
var telLen=tel.length;
for(i=0;i<telLen;i++){
/*var part=/^(08|09)[0-9]{8}$/
if(!tel[i].match(part)){
alert('หมายเลข '+tel[i]+' นี้ไม่ถูกต้องค่ะ'); return false;
}
else{*/
var telNum=tel[i].length;
if (telNum < 10){
alert('หมายเลขนี้ '+tel[i]+' ไม่ครบ 10 หลักค่ะ'); return false;
}
if (telNum >= 11){
alert('หมายเลขนี้ '+tel[i]+' เกิน 10 หลักค่ะ'); return false;
}
}
}
</script>
Telephone : <textarea type="text" name="telephone" id="telephone" cols='30' rows='5' onblur="checkTel()" onchange="checkNum()" /></textarea>
Date :
2013-02-21 14:15:55
By :
annaann18
Load balance : Server 02