找回密码
 立即注册
社区广播台
      查看: 22398|回复: 3

      网页制作中关于网页表单提交的制作

      [复制链接]
      发表于 2014-1-19 19:05:21 | 显示全部楼层 |阅读模式
           参考主题:实例学习网页制作中常用的网页表单的应用
      , K4 \; v3 v+ f0 z- N    表单的提交0 m8 Z# z& ~7 C. m
          表单的提交/ U; I* f9 _8 L- E/ @2 {7 X
          既然表单是用来采集用户输入的数据,那么,就应该保证用户的数据被准确地提交到预定的地点,也就是说,我们在表单提交的时候,应该对用户的数据进行检验,一来可以避免用户误输数据,二来可以避免用户输入非法的,或者说不合格的数据;检验合格以
      / k1 a2 [/ o9 I! {  d7 I' ^9 q9 V    既然表单是用来采集用户输入的数据,那么,就应该保证用户的数据被准确地提交到预定的地点,也就是说,我们在表单提交的时候,应该对用户的数据进行检验,一来可以避免用户误输数据,二来可以避免用户输入非法的,或者说不合格的数据;检验合格以后,还要保证用户的数据提交到特定的程序。# j+ G  B4 S/ i* ]4 W
          1.数据的检验
      . q* _2 k6 }: r  }* Y+ j" u/ H    数据的检验,通常有两种程序:客户端检验和服务器端检验。客户端检验,比较快,服务器端检验,相对来说比较慢,为了确保安全,通常同时采用,这样就可以避免用户刻意破坏。
      + ]6 x+ O5 e% ~6 _0 F0 h6 L    不管采用什么方式,数据检验的原理都是一样的,一旦用户输入的数据不符合规定,就报错,要求用户重新输入,客户端检验常使用Javascrip脚本,服务器端的视系统而定,本文不对数据检验的具体程序设计进行探讨,仅仅列举几个例子来说明。
      - P+ e4 l3 K& P1 c( B    样例:必填项,以及简单的数据类型检验+ I1 R8 ]) ^. M; o3 r# q
          功能实现分析:
      - Q8 ~( G7 f$ f) q    本例给表单添加了onSubmit事件,通过onSubmit="return  v4 i; d+ z1 g" [$ P
          CheckDate()"指定提交前,必须通过函数CheckDate()来检验,如果不合格,返回输入数据;
      : ^" g/ p3 i" M- s    数据检验的函数如下: <script> function
      ) l/ B# W5 Y, n) p. _9 |/ ?    CheckDate(){ //取得输入的数据 userName = document.RedForm.userName.value;$ w) e/ f* @1 d, |, ]
          userEmail = document.RedForm.userEmail.value; //如果没有输入姓名 if& L0 O0 N! D; c! s3 c! N" f6 w! ~0 s
          (userName=="") { alert("请输入姓名"); document.RedForm.userName.focus();
      - M# W- b" m5 z% `6 ^4 t" P, c    return false; }else{ //如果没有输入Email,上海搬场公司或者Email地址错误(不含@) if
      * N3 h/ ^# i: o5 `    ((userEmail=="")||(userEmail.indexOf("@")==-1)) {
      * H" w/ O/ d3 e+ q4 e. N$ F    alert("请重新输入Email地址"); document.RedForm.userEmail.focus(); return. l: ?" W/ w. Y8 K/ Q
          false; }else return true; } }
      7 o: K) e% a/ `$ G- i    </script>' k* c6 R0 c9 R
          以下带*的必须输入:
      & T4 n* r. \+ f# P, |; ~7 m    姓名:  *
      # N- \3 U0 B$ a) o1 f+ ^    Email:  *
      % }- {& I  X( y6 R" d7 G  A    表单的分支提交
      9 y+ N3 b. I* n% ^+ D    有的时候http://www.zyldjd.com/,大众搬家表单需要根据用户的选择,提交到不同的程序,怎么做呢?通过脚本来检测用户的选择分支,从而向不同的程序提交表单,看看样例:  n, g* a0 x% J/ D  H4 t1 P3 d: e- [
          样例:分支提交
      8 p0 \0 q2 U. q    用户名:  密码:1 q! N' A1 S# [( Z* Y
          公司用户  个人用户7 X/ I. w; r  j1 p
          功能实现分析:
      ( S5 a2 c7 K, b1 O' \# j4 [6 a4 R    这里首先用到的是form的onSubmit="TwoSubmit(this)"
      . d" O8 l/ e( m' e9 P, Z. b    然后根据选择的分支http://www.sh6997.comhttp://www.xiangpaiming.com,上海搬家公司来分别递交到不同的程序,大众搬场TwoSubmit()函数如下:' G% A4 n" D5 z. n( [8 }6 @% }# A
          <script> function TwoSubmit(form){ if
      + K- x3 R, P5 E" Z6 E2 h) [    (form.Ref[0].checked){ form.action = "cop.asp";//这里是分之一 }else{2 v- k+ n& W# L$ L
          form.action = "ind.asp";//这里是分之二 } form.submit(); }
      8 `# c1 [- f( Z% W    </script>
      7 B2 w, r  M. a) [0 b: W1 I    用任何元素提交表单
      , ]: B  [* s; G    是不是只有按钮或者图片按钮才能提交表单呢?当然不是,实际上,任何页面元素都可以提交表单,不过嘛,都是通过脚本来完成的,下面我们就使用链接来代替Submit按钮:
      2 c  g% j3 Y- z9 J7 J) ^    [恶搞]表格中单元格之间分隔线的隐藏方法_
      您需要登录后才可以回帖 登录 | 立即注册

      本版积分规则

      快速回复 返回顶部 返回列表