引用 | 编辑
keigo
2005-06-05 06:19 |
楼主
▼ |
||
x0
刚好工作上有用到,所以找了一下公式,写了检验的script(一) 长度:共八位,,全部为数字型态。 (二) 计算公式 1、各数字分别乘以 1,2,1,2,1,2,4,1。 2、当第 7 位数为 7 者,可取相加之倒数第二位取 0 及 1 来计算其和。 3、假如其和能被 10 整除,则表示营利事业统一编号正确 下面这是检验的script语法 复制程式 <script> function checkTB(sid){ var tbNum = new Array(1,2,1,2,1,2,4,1); var temp = 0; var total = 0; if(sid=="") alert("请先输入欲检验的营利事业统一编号!"); else if(!sid.match(/^d{8}$/)) alert("营利事业统一编号长度不够或格式有误!请注意营利事业统一编号格式为八码数字!"); else{ for(var i = 0; i < tbNum.length ;i ++){ temp = sid.charAt(i) * tbNum[i]; total += Math.floor(temp/10)+temp%10; } if(total%10==0 || (total%10==9 && sid.charAt(6)==7)) alert("营利事业统一编号正确!"); else alert("营利事业统一编号错误!"); } } </script> 下面这是简易的网页,有兴趣的自行存成HTML档 正确的营利事业统一编号00238778 复制程式 <script> function checkTB(sid){ var tbNum = new Array(1,2,1,2,1,2,4,1); var temp = 0; var total = 0; if(sid=="") alert("请先输入欲检验的营利事业统一编号!"); else if(!sid.match(/^d{8}$/)) alert("营利事业统一编号长度不够或格式有误!请注意营利事业统一编号格式为八码数字!"); else{ for(var i = 0; i < tbNum.length ;i ++){ temp = sid.charAt(i) * tbNum[i]; total += Math.floor(temp/10)+temp%10; } if(total%10==0 || (total%10==9 && sid.charAt(6)==7)) alert("营利事业统一编号正确!"); else alert("营利事业统一编号错误!"); } } </script> <FORM METHOD=POST ACTION=""> <INPUT TYPE="text" NAME="TB"> <INPUT TYPE="button" onclick="checkTB(TB.value);" value="检验统编"> </FORM> x0
|