實現輸入正確的身份證號后,點擊圖片校檢將省市區(縣)和年齡計算出來
前面頁面展示
代碼:
<tr> <td width="15%" align="right">身份證號:</td> <td align="left" bgcolor="#FFFFFF" width="35%"> <asp:TextBox MaxLength="18" ID="tbStuCardCode" runat="server"></asp:TextBox> <asp:ImageButton ID="btnCheckCard" runat="server" ImageUrl="~/qdAdmin/qdimages/check.png" title="校驗檢查" onclick="btncheckTel_Click" ImageAlign="AbsMiddle"/> <br><asp:Label ID="LabelCheckCardMsg" runat="server" ForeColor="#FF3300"></asp:Label> </td> <td width="15%" align="right">戶籍地:</td> <td align="left" bgcolor="#FFFFFF" width="35%"> <asp:DropDownList ID="ddlPlaceSheng" runat="server" AutoPostBack="True" onselectedindexchanged="ddlSheng_SelectedIndexChanged" Width="90px"></asp:DropDownList> <asp:DropDownList ID="ddlPlaceCity" runat="server" AutoPostBack="True" onselectedindexchanged="ddlSheng_SelectedIndexChanged" Width="90px"></asp:DropDownList> <asp:DropDownList ID="ddlPlaceArea" runat="server" Width="90px"></asp:DropDownList> </td> </tr>
后面代碼展示
代碼
else if (btn.ID == "btnCheckCard") { this.LabelCheckCardMsg.Text = string.Empty; string s = this.tbStuCardCode.Text.Trim(); if (s.Length != 18) { this.LabelCheckCardMsg.Text = "請正確輸入身份證號"; return; } string sCard = "086" + s.Substring(0, 6); List<ITEM.Model.qdCnt4.FourCollsType> mTypeList = _bllTypeColls.GetListSelFourCollsType3("TypeCollCode", base.EnterpriseGuid, " and TypeCollMark='" + sCard + "'"); if (mTypeList.Count == 1) { string sTypeCollCode = mTypeList[0].TypeCollCode; //通過身份證號獲取 省、市、區(縣) this.ddlPlaceSheng.SelectedValue = sTypeCollCode.Length >= 18 ? sTypeCollCode.Substring(0, 18) : "";//戶籍 ddlSheng_SelectedIndexChanged(this.ddlPlaceSheng, new EventArgs()); this.ddlPlaceCity.SelectedValue = sTypeCollCode.Length >= 27 ? sTypeCollCode.Substring(0, 27) : "";//戶籍 ddlSheng_SelectedIndexChanged(this.ddlPlaceCity, new EventArgs()); this.ddlPlaceArea.SelectedValue = sTypeCollCode;//戶籍 } else if (mTypeList.Count > 1) { this.LabelCheckCardMsg.Text = "身份證號未唯一匹配到區域"; return; } else { this.LabelCheckCardMsg.Text = "身份證號未匹配到區域"; return; } //通過截取身份證號計算年齡 string sAge = s.Substring(6, 4); try { tbStuAge.Text = (DateTime.Now.Year - Convert.ToInt32(sAge)).ToString(); } catch { this.LabelCheckCardMsg.Text = "身份證號輸入錯誤"; return; } }