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()。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)