以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  关于身份证判断的误报  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=86155)

--  作者:xujie80
--  发布时间:2016/6/12 9:28:00
--  关于身份证判断的误报
在输入带有“X”身份证号码时,
Select Case e.DataCol.Name
    Case "身份证号"
        If e.NewValue >"" Then
            If ValidPIN(e.NewValue) = False
                MessageBox.show("身份证号码有误,请重新输入","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.warning)
            Else
            End If
        End If
End Select
用validpin进行验证,但总是报错
Select Case e.DataCol.Name
    Case "身份证号"
        If e.NewValue >"" Then
            If (e.NewValue) = False
                MessageBox.show("身份证号码有误,请重新输入","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.warning)
            Else
            End If
        End If
End Select
例如下面身份证号码:
32092419810818291x
录入时会报错
但将其改成大写X,就正常
能否请详解一下ValidPIN的原理?这样便于我们进一步深入编程

--  作者:大红袍
--  发布时间:2016/6/12 9:35:00
--  

你可以这样写

 

If ValidPIN(e.NewValue.ToUpper) = False


--  作者:大红袍
--  发布时间:2016/6/12 9:38:00
--  

身份证的校验方法

 

http://jingyan.baidu.com/article/d5a880eb974b6513f147ccec.html

 

http://blog.163.com/wm_at163/blog/static/1321734902009111105224729/