怎样用js验证表单提交到数据库,求高手

怎样用js验证表单提交到数据库,求高手,第1张

把我的js验证表单代码给你吧:

var myreg =/^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/

function reg_check(){

if(document.form1.username.value.match(/^[a-zA-Z]*/) == ''){

alert('用户名不能为空且必须以字母开头!')

document.form1.username.focus()

return false

}

else if(document.form1.userpwd.value.length==0){

alert('密码不能为空!')

document.form1.userpwd.focus()

return false

}

else if(document.form1.userpwd.value.length<6||document.form1.userpwd.value.length>16){

alert('密码长度不得小于6且大于16位!')

document.form1.userpwd.focus()

return false

}

else if(document.form1.userpwd.value.length<6||document.form1.userpwd.value.length>16){

alert('密码长度不得小于6且大于16位!')

document.form1.userpwd.focus()

return false

}

else if(document.form1.confirmpwd.value!=document.form1.userpwd.value){

alert('两次密码输入不一致!')

document.form1.confirmpwd.focus()

return false

}

else if(document.form1.email.value.length==0){

alert('邮箱不能为空!')

document.form1.email.focus()

return false

}

else if(!myreg.test(document.form1.email.value)){

alert('邮箱格式错误!')

document.form1.email.focus()

return false

}

else {

document.form1.submit()

}

}

<form name="form1" action="" method="post">

<input type="text" name="username" />

<input type="password" name="userpwd" />

<input type="password" name="confirmpwd" />

<input type="text" name="email" />

<input type="submit" name="submit" onclick="return reg_check() " />

</form>

要实现将jsp中数据添加到数据库并刷新页面可以使用servlet来做中间件,进行数据库的插入 *** 作。

具体示例代码如下:

jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

  </head>

  <body>

    <form action="/demoServlet" method="post">

        <input type="text" name="num"/><br/>

        <input type="text" name="name"/><br/>

        <input type="submit" value="提交"/>

    </form>

  </body>

</html>

servlet类:

public class DemoServlet extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)

            throws ServletException, IOException {

        Connection conn = null

        PreparedStatement pstmt = null

        String num = request.getParameter("num")

        String name = request.getParameter("name")

        try{

            String sql="insert into student values(?,?)"

//            conn=jdbcTool.getConnection()//获取连接(工具类)

            pstmt=conn.prepareStatement(sql)

            pstmt.setString(1,num)

            pstmt.setString(2,name)

            pstmt.executeUpdate()//执行插入

        }

        catch(Exception e ){

            System.out.println(e.toString())

        }finally{

            jdbcTool.free(null, pstmt, conn)//关闭连接(工具类)

        }

        request.getRequestDispatcher("/demo.jsp").forward(request, response)//重新跳转到本页面(刷新页面)

    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)

            throws ServletException, IOException {

        doGet(request, response)

    }

}

点击提交按钮后,表单提交,调用doPost方法,执行 *** 作,最后通过转发跳转会原来的界面。

只是需要文件上传才用它的

xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded")

改成

xmlHttp.setRequestHeader("Content-Type","multipart/form-data")。

js模拟post提交的代码

通过js模拟post提交

1:请求需要的参数过长,超过get允许的最大长度

2:想要隐藏地址栏的参数

//新创建一个form表单

document.write('<form name=myForm></form>') 

var myForm=document.forms['myForm'] 

myForm.action='runEmpAttendance' 

myForm.method='POST'

var input = document.createElement('input')

input.type = 'text'

input.name = 'userId'

input.value = 100

myForm.appendChild(input)

myForm.submit()

//使用jsp中已经存在的form表单,添加其他的参数

var myForm = document.forms['listEmployee']  //表单的name

var input = document.createElement('input')

input.type = 'hidden'

input.name = 'currentPage'

input.value = 1

myForm.appendChild(input)

myForm.method= 'POST'

myForm.submit()。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10718015.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存