用javascript响应表单的提交事件

发表于:2007-06-21来源:作者:点击数: 标签:
我们有的时候要在提交表单之前对用户输入的数据进行验证,如果输入的不正确的话,就给一提示,并让从新输入,那么我们是怎么实现的呢? 现在我以一个 需求 的实现为例进行简要说明: 我的功能要求: 用户输入一个类型,要求是数字,所以我们进行数字验证。 在提交

   
    我们有的时候要在提交表单之前对用户输入的数据进行验证,如果输入的不正确的话,就给一提示,并让从新输入,那么我们是怎么实现的呢?
现在我以一个需求的实现为例进行简要说明:
我的功能要求:

用户输入一个类型,要求是数字,所以我们进行数字验证。
在提交的时候对起类型id字段进行是否为空验证,如果为空的话,就给一个提示,并要求起从新输入

我们的JSP代码如下:
<%@page contentType="text/html; charset=GBK"%>
<html>
<head>
<title>addNewsType</title>


</head>
<body bgcolor="#ffffff">
<h2>新闻类型添加</h2>
<hr />
<form name="form1" method="post" action="<%=request.getContextPath()%>/news/NewsTypeAddAction.sh" 

onSubmit="return actionCheck();">


<table>
  <tr>
    <td>新闻类型编号</td>
    <td>
      <input type="text" name="typeid" onBlur="isDigit(this.value)">    </td>
  </tr>
  <tr>
    <td>新闻类型名称</td>
    <td>
      <input type="text" name="typename">    </td>
  </tr>
  <tr>
    <td>新闻存放目录名称</td>
    <td>
      <input type="text" name="dir">    </td>
  </tr>
  <tr>
    <td>使用模版名称</td>
    <td>
      <input type="text" name="templatename">    </td>
  </tr>
  <tr>
    <td colspan="2">
      <div align="center">
        <input type="submit" name="Submit" value="Submit">
        <input type="reset" value="Reset">    
      </div></td>
    </tr>
</table>
</form>
<script type="text/javascript">
function isDigit(s)
{
  var patrn=/^[0-9]{1,20}$/;
  if (!patrn.exec(s)&&s!=""){
    alert("请您输入数字!");
    document.form1.typeid.value="";
    document.form1.typeid.focus();
    return false;
  }
}

function  actionCheck(){
  if(document.form1.typeid.value==""){
    alert("新闻类型编号不能为空!");
    document.form1.typeid.value="";
    document.form1.typeid.focus();
    return false;
  }
}
</script>
</body>
</html>

我们的javascript检验部分不需要解释,主要是我们的检验代码要在要在form的onSubmit事件中实现,并且要使用return 返回值才能实现。也就是下划线显示的部分。
自己的一点粗浅认识,望多指教。

原文转自:http://www.ltesting.net