เมื่อต้องการให้ป้อนค่า ลงในช่อง Text Input หรือช่องรับค่า ที่เป็นตัวเลขเท่านั้น เพราะโดยส่วนมาก Text Input นั้นจะรับค่า ได้ทุกตัว ทั้งตัวเลข, ตัวอักษรและตัวอักขระ สิ่งมันจะมีปัญหาในกรณีที่เราเอาค่าของ Text Input ไปลงใน filed ที่ถูก Set ให้เป็น ตัวเลข เช่น float or integer ใน Table ปัญหาก็คือเกิด Error และไม่ทำการเพิ่มข้อมูลหรือแก้ไขข้อมูลให้ ดังนั้น ต้องหาวิธีการที่จะต้องให้คนป้อนข้อมูลนั้น รู้ว่้าซึ่งที่เขาป้อนนั้น ผิดมหันต์
คำถาม วิธีที่จะตรวจสอบว่าเขาป้อนผิดนั้น มันต้องทำอย่างไร?
ตอบ ทำการเขียนคำสั่งตรวจสอบการกระทำของ filed นั้นทุกครั้งที่มีการ ป้อน
ตัวอย่างคำสั่ง (javascript)
function isNumeric(elem, helperMsg) { var numericExpression = /^[0-9]+$/; if(elem.value.match(numericExpression)){ return true; }else{ alert(helperMsg); elem.value=elem.value.substr(0,elem.value.length-1); elem.focus(); return false; } }
วิธีเรียกใช้
<input size="15" type="text" name="total" class="input" onKeyup="JavaScript:return isNumeric(this,'กรุณาป้อนจำนวนตัวเลขครับ');" />
ปล. ถ้าต้องการให้ป้อนจุดทศนิยมได้ ให้ประกาศตัวแปรแบบนี้
var numericExpression = /^[0-9.]+$/;