1.完成過程遇到幾個問題:javascript
1.1 用js實現註冊手機號、郵箱、確認密碼驗證java
首先要肯定驗證的正則表達式,網上有不少版本,其次難住的地方是沒法引用,由於對js不熟悉,因此犯了不少」愚蠢「的錯誤。好比,js應寫在body外面;值的傳遞是經過是value來進行的;引用onblur事件來觸發函數。舉個例子:正則表達式
手 機 號:<input class="layui-btn layui-btn-primary layui-btn-radius" type="text" name="telephone" id="telephone" onblur="upperCase(this.value)" /><br>
script對應的代碼 :sql
<script type="text/javascript"> function upperCase(val){ //var val=document.getElementById(phone).value; var reg=/^1[345678]\d{9}$/; if (val=='') { alert("請輸入手機號!") }else if(reg.test(val)){ }else{ alert("手機號輸入錯誤,請從新輸入!!") } } </script>
2.session的使用session
實現創新年報搜索相關平臺信息時用到了session傳值app
基本思路爲:用list來傳值平臺類的屬性值,用session的setAttribute來存一個對象,在jsp中用getAttribute來讀取。舉個例子:jsp
servlet類函數
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub req.setCharacterEncoding("utf-8"); String condition1 = req.getParameter("condition1"); String content1 = req.getParameter("content1"); String sql = "select PId,Pname,Pnum,approval_num,techField from platform where "+condition1+" like '%"+content1+"%'"; Connection conn = DBUtil.getConnection(); PreparedStatement prep = null; ResultSet rs = null; List<platform> list = new ArrayList<platform>(); HttpSession session = req.getSession(); try { prep = conn.prepareStatement(sql); rs = prep.executeQuery(); while(rs.next()) { platform platform = new platform(); platform.setPId(rs.getInt(1)); platform.setPname(rs.getString(2)); platform.setPnum(rs.getDate(3)); platform.setApproval_num(rs.getString(4)); platform.setTechField(rs.getString(5)); list.add(platform); } session.setAttribute("platforms", list); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } resp.sendRedirect("/Innovation/NewSearch2.jsp"); }