网络编程
位置:首页>> 网络编程>> Asp编程>> ASP+JAVAScript:复杂表单的动态生成与验证(3)

ASP+JAVAScript:复杂表单的动态生成与验证(3)

  发布时间:2007-10-06 21:51:00 

标签:表单,验证,动态

  现在可以开始把表单写入页面:

  < FORM ACTION="./dform.asp" METHOD="POST" NAME="MyForm" onSubmit="return validate(this)" > 


  在这里,只有当validate函数返回true时才执行表单提交操作。因此当客户端JavaScript验证功能关闭时,validate函数将自动返回true。
  接下来要加入的是名为val的隐藏域。如前所述,该值指示表单的验证模式。

  < INPUT TYPE="HIDDEN" NAME="val" VALUE="< %=iValType% >" > 


  当用户提交表单时,处理脚本将根据该值确定是否执行服务器端验证。
  然后输出的是表格标记以及表格标题。标题保存在变量sTitleLabel中,该值在脚本开始执行时初始化: 

  < TABLE BORDER="0" > 
  < TR > 
  < TD COLSPAN="2" ALIGN="CENTER" > 
  < H2 >< %=sTitleLable% >< /H2 > 
  < /TD > 
  < /TR > 


  作为改进措施,可以在表Definitions、Lists和Records中增加一个字段FormID。FormID唯一标识一个表单,这样程序就可以同时地定义多个表单、保存多个表单的用户应答结果。至于上面的sTitleLabel,我们可以用另外一个表(比如Forms)来保存。
  紧接着表格标记和表格标题,程序输出的是HTML表单以及“提交”、“清除”按钮的代码。在此之后,程序检查sHTML字符串中是否包含“*”,如包含的话说明表单中存在必须输入的内容,此时就输出一个脚注以说明该星号的含义。



< %=sHTML% > 
  < TR > 
  < TD COLSPAN="2" ALIGN="CENTER" > 
  < INPUT TYPE="SUBMIT" VALUE="提交表单" > < INPUT TYPE="reset" VALUE="清除" > 
  < /TD > 
  < % 
  ’是否存在必需输入的表单域,如存在,则输出表单脚注解释’*’的含义 
  If InStr(sHTML,"*") Then 
  % > 
  < /TR > 
  < TD COLSPAN="2" ALIGN="CENTER" > 
  < FONT SIZE="2" >注意:有星号标记的值必需输入。< /FONT > 
  < /TD > 
  < /TR > 
  < % 
  End If 
  % > 
  < /TABLE > 
  < /FORM > 

至此为止,表单的生成任务已经完成。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com