[javascript]รบกวนช่วยแก้ CODE ให้หน่อยครับ

เริ่มโดย deknakhon, 17 กุมภาพันธ์ 2012, 16:31:13

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

deknakhon


<script language="javascript">
function checkID(id)
{
if(id.length != 13) return false;
for(i=0, sum=0; i < 12; i  )
sum  = parseFloat(id.charAt(i))*(13-i); if((11-sum)!=parseFloat(id.charAt(12)))
return false; return true;}

function checkIDcard()
{ if(!checkID(document.frmMembers.idcard.value))
alert('รหัสประชาชนไม่ถูกต้อง');
else alert('รหัสประชาชนถูกต้อง เชิญผ่านได้');}

</script>
<p><label>หมายเลขบัตรประจำตัวประชาชน</label> <input type="text" name="idcard" maxlength='13' class="input" onKeyup="JavaScript:return checkIDcard();" > </p>


ปัญหา จาวามันขึ้นออกมาตั้งแต่พิมพ์เลขตั้งแรก ผมต้องให้ตรวจสอบหลังจากพิมพ์ครบ 13 ตัวแล้วนะครับ 
ขอบคุณครับ
รับพัฒนาโปรแกรม PHP Mysql
รับออกแบบระบบโปรแกรม
รับวางระบบเครือข่ายคอมพิวเตอร์

mrbov

#1
ตรงนี้หรือเปล่าครับ พอดีไม่ค่อยสันทัดจาวาครับ แต่ expression น่าจะคล้ายๆ ตัวอื่น

for(i=0, sum=0; i < 12; i  )

น่าจะเป็น

sum=0;
for (i=0; i<=12; i++)

หรือเปล่าครับ

٩(-̮̮̃•̃)۶ ٩(̾●̮̮̃̾•̃̾)۶

เพราะใช้ onKeyup ไงครับ มันเลยเด้งมาตั้งแต่พิมพ์