NoahWeb
在线搜索
NoahWeb.net | 开发者交流中心 | 支持 | 文档 | 反馈缺陷 

表单基本标签示例

Forms
这是整个表单文件(Forms.xml.config)的根节点标签,该标签用来声明该表单文件隶属的名称空间。如下图

在声明名称空间后,打开表单文件,该标签会被自动创建,在没有必要的情况下,希望用户不要改动。

 




Form
这是一个表单的开始标签,一个表单中所有的输入输出区标签都必须放在Form标签中。如下图


该标签有两个参数,id和Text。其中id用来声明该表单的名称。如下图

参数Text用来声明表单的标题文字。如下图

下图是现在的标题,如果我们将Text参数后面的文字换一换。如下图

使用Form标签的时候,请注意不要将id的写错,因为在action中调用表单时,需要靠id来进行识别,这是重要的。

 


Line
形象一点说,这是表示一个表单的输入区的开始,很像是HTML中的“TABLE”。也就是说,你所有的输入输出控件都应该包含在该标签之下。
如下图


该标签带有一个参数,text。给该参数传值并不会影响页面的输出情况,换句话说,这个参数对于前端是没有意义的。但是你可以将关于下面
输入输出控件的描述写在该参数内,以便日后的维护。如下图

看起来这个标签似乎不是那么重要,但是事实并非如此。你所有的输入输出控件一定要放在该标签之内,千万不要忘记。另外,该标签可以出现一次或更多次。

 


TitleLine
如果你希望给你的输入输出控件进行诸如分组操作的话,眼前这个标签就派上用场了。是的,该标签可以为控件添加标题行。它带有一个text参数,用于输入你希望的标题。如下图

在这里,我们使用了该标签,并且在该标签后面加入了一组Line标签和一组输入控件标签。那么在前端显示发生了什么变化呢?如下图

看到图中红圈的部分,表单已经被TitleLine标签划分出了一个新的标题行。如果你表单中的控件需要进行划分的话,那么,使用该标签是你最好的选择。

有一点值得说明一下,该标签是没有结束标签的,它是一个空标签。另外,它和Line,EndLine标签是同级的,所以,请注意不要将它放在上述两组标签之内。反之亦然。

 


EndLine
这是相对特殊的一个标签。它用于表单下方的提交区,也叫做表单结束行。当你的表单结束时,需要使用一个按钮进行提交等操作,你必须使用该标签。它带有一个text参数,作用和Line标签的text相同,都是添加描述文字用的。如下图

我们看到,在该标签中包括了一组Input标签,其中定义了一个sumbit,这就是你表单的按钮。在NoahWeb中,每个表单都只能拥有一个按钮,这是由系统决定的。也就是说,EndLine在一个表单中只能出现一次。

请记住,当一个表单结束时,一旦需要使用按钮进行操作,就必须使用该标签,而且,该标签在一个表单中也只能出现一次。如果你的表单结束时使用的是链接的话则不必。

 




InputLine
该标签表示开始一个新的输入区。形象一点说,它有点像HTML中的TR。它带有两个参数,Text和Desc。我们可以在它的Text中输入文字来做为标题。后面的Desc则是关于这个InputLine的描述。如下图

而在前端页面的显示如下图

如果我们将Text中的文字换掉的话,如下图

那么现在前端页面的显示如下图

参数Desc的使用方法和Line标签的Text是相同的,不会对前端页面产生任何影响。

InputLine标志着一个新的输入区的开始,也就是说,当你创建一个新的输入区的时候,该标签应该被放在最开始。

 


Input
该标签告诉我们开始了一个新的输入控件,它带有三个参数,分别是Id,Type,LinkValue。我们依次来看,Id是指该标签的名称,Type是指该标签的类型,而LinkValue指的是构造传值所对应的变量表达式。如下图

我们看到了,该标签是包含在InputLine之下的,那么它看起来更像是HTML的td,是开始一个输入输出控件的必要。在前端页面显示如下图

如果我们在Type中将现有的类型换掉的话,如下图

那么前端页面显示如下图

  通过改变该标签中Type的值就可以改变该输入输出区的类型。目前,NoahWeb所支持的控件类型分别是:select-multiple,select,text,textarea,label,radio,date,checkbox,file,hidden,image,password,button,reset,submit 我们依次看一看。

select-multiple 可多选的下拉单
select 单选的下来单
text 文本输入框
textarea 多行文本输入框
label 标签类型
radio 单选钮
date 日期类型控件
checkbox 多选钮
file 文件浏览按钮
hidden 隐藏类型
image 图片类型
password 密码类型
button 一般按钮
reset 清空所有已填入内容按钮
submit 提交按钮

  最后一个参数LinkValue是当你的表单需要接收一个数据库查询返回值的时候用到的。与之配合使用的则是Form标签中的‘XXX=“Value” ’。如下图

如例,我们看到,title="Value",这里Value的值就是从数据库中查询的返回结果,我们使用title来进行接收。现在,kind已经有值了,问题是将这个值如何返回到页面中。我们就需要使用LinkValue来进行接收。如下图

其实,上面说道的那个title是为了接收数据库返回值所创建的一个变量,其名称不一定要和Input 的id名称相同。但是,如果能够同名的话,可以起到标识的作用,比如变量title的值应当放在id=title的Input中。在此,我们可以使用LinkValue标签将数据库返回值放到id=title这个Input中。如上图所示。

使用Input标签时,id是非常重要的。这是该Input的唯一标识符,对于每一个Input来说都应该是唯一的,不能够出现同名的情况。而关于使用LinkValue让表单进行接收值的时候,顺序和名称是重要的,如果只是接收一两个值的话似乎看不出什么,一旦表单接收的值比较多的时候,顺序和名称就变得尤为重要。不注意这两点,有可能你会被自己创建的表单搞得很头痛。

 


NullErrorString
该标签用于用户端的控件输入检测,从它的名称我们就可以看出,这是一个为空检测,也就是说,当表单提交时,如果该标签所属的Input控件中为空的时候,系统会产生提示。如下图



回到前端页面,如果在该Input控件中我们没有输入值,那么系统会给出提示。如下图

在该标签中的文字就是系统弹出提示框时出现的文字,你可以根据需要进行添加。目前,NoahWeb支持多种检测标签,下面我们来看一看。

CTwoinput
校验该控件和指定的控件的值是否完全一致。该标签下的内容为指定控件的控件Id。

CTwoinputErrString
校验该控件和指定的控件的值是否完全一致。该标签下的内容为检验不相等时客户端提示的错误信息。

MailErrorString
检验该输入区输入的内容不为一个邮件地址时中断提交并提示的信息

ChinaIDCardErrorString
检验该输入区输入的内容不为一个中国身份证时中断提交并提示的信息

ChinaPhoneNumberErrorString
检验该输入区输入的内容不为一个中国电话号码时中断提交并提示的信息

ChinaPostalcodeErrorString
检验该输入区输入的内容不为一个中国邮政编码时中断提交并提示的信息

HttpURLErrorString
检验该输入区输入的内容不为一个HTTP的地址时中断提交并提示的信息

NaNErrorString
检验该输入区输入的内容不为一个数字时中断提交并提示的信息

由于上述几种检测标签的使用方法和示例中的为空检测标签相似,以及篇幅原因,在这里不作过多介绍。




Label
该标签用来为所属的Input控件添加显示名称,无参数。如下图

如果我们在该标签中间添加文字的话,前端页面也会随着发生变化,如下图



想必现在你已经有所了解了,是的,该标签和InputLine标签的Text参数的作用看起来是相同的。但是,要知道InputLine标签的Text参数是为InputLine添加一个标题,而这个Label标签则是为Input控件添加文字的,看看下图,你就会发现,这两种标签同时使用的时候,显示在前端的文字位置是不一样的。如下图

对于该标签的使用方法有很多,比如你可以在该标签中写入全角空格,来调整后面Input控件的位置。如下图

当然,也许你在使用中会发现它的更多用法,这都是不尽然的,这里的使用示例也都是经验之谈,希望能起到抛砖引玉的作用,如果你找到了更多更好的使用方法,非常欢迎你与我们联系,共同交流。


LabelClass
该标签配合Label标签使用,用来指定在Label标签中出现的文字描述所使用的样式名称。如果你对于CSS不陌生的话,那么相信你可以理解它的作用。如下图

现在我们在Label标签中输入文字,前端页面显示如下图

如果我们现在将LabelClass标签删除的话,那么前端显示如下图

我们可以清楚地看到,由于没有样式地控制,系统使用默认样式,字体发生了变化。而该标签并不是必须出现的,如果你的Input控件中缺省该标签时,那么系统将会使用默认样式显示Label中的文字。



LabelStyle
我们可以这样理解,上面谈到的LabelClass标签指定了Label标签中文字所使用的样式“名称”,而这里的LabelStyle标签则是指定了Label标签中文字所使用的样式“细节”,如下图



我们看到,该标签中指定了Label标签中文字所使用的文字颜色是red,而字体大小为12px,这些都是CSS的内容。那么前端页面显示如下图

你可以根据需要进行更改,如下图

那么前端页面也发生了变化。如下图

该标签可以自定义文字大小,颜色等等,所以常用于特殊的文字说明。该标签同样并非必须的,你可以根据需要进行使用。


size
该标签用于设置其所属Input控件的大小。使用方法非常简单。如下图

这时前端页面显示如下图

如果我们将该标签中的长度改变的话,那么页面中控件的长度也会随之发生变化。如下图

在from中,size标签并不是必须出现的,如果你并没有为一个Input控件使用该标签来指定长度的话,那么系统会自动分配给Input控件一个默认长度。如果你的控件长度需要很大的话,那么使用该标签就是你最好的选择。


 

Value
该标签用来指定所属的Input控件中的默认值,如下图

加入该标签,前端页面显示如下图

我们在Value标签中输入的文字即是该标签所属Input控件的默认值。
该标签同样为可选标签,当你的Input控件中需要使用某个默认值的时候,可以使用该标签进行指定。


class
该标签用来控制所属Input控件区的样式,如果你的css知识不错的话,相信这些都难不倒你。我们来看看它的作用。如下图

前端显示如下图

如果我们将该标签删除,如下图

那么,前端页面的显示随之发生了变化,如下图

该标签为可选标签,并不需要一定出现。如果你的Input控件需要指定样式的时候,可以使用它。

 

 

 

 

 

查看NoahWeb在线手册

Copyright © 2001-2004 The NoahWeb Corporation
All rights reserved.