Provided by: manpages-zh_1.6.3.3-2_all
NAME
html - 产生 HTML 框架的子程序
总览 SYNOPSIS
package require Tcl 8.2 package require html ?1.2.1? ::html::author author ::html::bodyTag args ::html::cell param value ?tag? ::html::checkbox name value ::html::checkSet key sep list ::html::checkValue name ?value? ::html::closeTag ::html::default key ?param? ::html::description description ::html::end ::html::eval arg ?args? ::html::extractParam param key ?varName? ::html::font args ::html::for start test next body ::html::foreach varlist1 list1 ?varlist2 list2 ...? body ::html::formValue name ?defvalue? ::html::getFormInfo args ::html::getTitle ::html::h level string ?param? ::html::h1 string ?param? ::html::h2 string ?param? ::html::h3 string ?param? ::html::h4 string ?param? ::html::h5 string ?param? ::html::h6 string ?param? ::html::hdrRow args ::html::head title ::html::headTag string ::html::if expr1 body1 ?elseif expr2 body2 ...? ?else bodyN? ::html::keywords args ::html::mailto email ?subject? ::html::meta args ::html::minorMenu list ?sep? ::html::minorList list ?ordered? ::html::openTag tag args ::html::passwordInput ?name? ::html::passwordInputRow label ?name? ::html::quoteFormValue value ::html::radioSet key sep list ::html::radioValue name value ::html::refresh seconds url ::html::init ?list? ::html::row args ::html::paramRow list ?rparam? ?cparam? ::html::select name param choices ?current? ::html::selectPlain name param choices ?current? ::html::submit label ?name? ::html::set var val ::html::tableFromArray arrname ?param? ?pat? ::html::tableFromList querylist ?param? ::html::textarea name ?param? ?current? ::html::textInput name args ::html::textInputRow label name args ::html::title title ::html::varEmpty name ::html::while test body
描述 DESCRIPTION
html 包提供了产生 HTML 的命令。这些命令一般返回 HTML 字符串作为结果。特殊的是,它们不向 stdout 输出结果。 ::html::init 命令应当最早调用,从而初始化整个模块。也可以使用这个子程序来定义 HTML 标记参数的默认值。 ::html::author author Side effect only. 在调用 ::html::head 之前调用它,来定义页面的作者。作者以 HEAD 段中的注释形式给出。 ::html::bodyTag args 产生一个 BODY 标签。标签参数来自 args 或是在 ::html::init 中定义的 body.* 属性。 ::html::cell param value ?tag? 产生一个 TD (或 TH) 标签,一个值,和一个关闭 TD (或 TH) 标签。标签参数来自param 或是在 ::html::init 中定义的 TD.* 属性。它使用 ::html::font 来在表格单元中插入一个标准的 FONT 标签。 tag 参数默认是 "td". ::html::checkbox name value 产生一个 CHECKBOX 表单元素,使用指定的名称和值。这使用了 ::html::checkValue. ::html::checkSet key sep list 产生一个 CHECKBOX 表单元素和相关标签的集合。list 应当包含一个可选标签和值的列表。这使用了 ::html::checkbox. ::html::checkValue name ?value? 为一个 CHECKBOX 表单元素产生一个 "name=name value=value" . 如果 CGI 变量 name 的值是 value,那么 SELECTED 将加入到返回值中。value 默认值是 "1". ::html::closeTag 从 ::html::openTag 创建的栈中弹出一个标签,产生相应的关闭标签 (例如,/BODY)。 ::html::default key ?param? 这个子程序由 ::html::tagParam 用来产生标签的参数名称和值列表。::html::default 子程序用来为那些不在 param 中的项目产生默认值。如果 key 代表的值匹配 param 中的一个值,那么这个子程序返回孔字符串。否则,它为 key 代表的表单元素返回一个 "parameter=value" 字符串。key 的形式是 "tag.parameter" (例如,body.bgcolor)。使用 ::html::init 来注册默认值。param 默认是空字符串。 ::html::description description Side effect only. 在调用 ::html::head 前调用它来为页面定义一个 META 标签。这个标签在随后调用 ::html::head 时产生。 ::html::end 从栈中弹出所有开标签,产生相应的关闭标签 (例如,</body></html>)。 ::html::eval arg ?args? 这个子程序类似于内置的 Tcl eval 命令,唯一的区别是它返回 "", 因此可以在一个 HTML 模板文件中调用,不会添加不需要的结果。 ::html::extractParam param key ?varName? 这是一个解释程序,从 param ,一个 HTML 式样的 "name=quotedvalue" 列表中得到所有 key 的值。varName 用作一个 Tcl 变量名,赋以参数中找到的值。这个函数返回 1,如果 param 中找到了参数,否则返回 0。如果没有指定 varName ,将使用 key 作为变量名。 ::html::font args 产生一个标准的 FONT 标签。标签的参数来自 args 和 ::html::init 定义的 HTML 默认值。 ::html::for start test next body 这个子程序与内置的 Tcl for 控制结构相似。但它返回联接的 (subst'ed) body 而不是去计算 body 的值。循环的每一次都会在返回值中联接另外一个字符串。 ::html::foreach varlist1 list1 ?varlist2 list2 ...? body 这个子程序与内置的 Tcl foreach 控制结构相似。但它返回联接的 body 而不是去计算 body 的值。循环的每一次都会将另外一个字符串联接到返回值中。 ::html::formValue name ?defvalue? 返回一个名称-值对,使用现有的 CGI 数据来初始化值。结果有以下形式: name="fred" value="freds value" ::html::getFormInfo args 产生隐藏的字段来捕获表单值。如果 args 是空,那么为所有 CGI 值创建隐藏字段。否则 args 是一个匹配表单元素名称的字符串模式的列表。 ::html::getTitle 返回 title 字符串,没有包围的 TITLE 标签。title 以一个先前调用的 ::html::title 定义。 ::html::h level string ?param? 产生一个标题 (例如, H1) 标签。string 嵌于标题中,param 用作标签参数。 ::html::h1 string ?param? 产生一个 H1 标签。参见 ::html::h. ::html::h2 string ?param? 产生一个 H2 标签。参见 ::html::h. ::html::h3 string ?param? 产生一个 H3 标签。参见 ::html::h. ::html::h4 string ?param? 产生一个 H4 标签。参见 ::html::h. ::html::h5 string ?param? 产生一个 H5 标签。参见 ::html::h. ::html::h6 string ?param? 产生一个 H6 标签。参见 ::html::h. ::html::hdrRow args 产生一个表格行,包含 TR 和 TH 标签。args 中的每个值都置入自己的表格单元中。这使用了 ::html::cell. ::html::head title 产生一个 HEAD 段,包含页面的 TITLE。如果先前调用了 ::html::author, ::html::keywords, ::html::description, 或 ::html::meta 那么附加的标签将插入到 HEAD 段中。它使用 ::html::openTag 将一个开 HTML 标签入栈. ::html::headTag string 保存一个包含于 ::html::head 产生的 HEAD 段中的标签。string 是一个标签中除了尖括号之外的所有东西。 ::html::if expr1 body1 ?elseif expr2 body2 ...? ?else bodyN? 这个子程序与内置的 Tcl if 控制结构相似。但它返回联接的 body 而不是去计算它每个分支 body 的值。注意这个语法与内置的 Tcl if 控制结构相比稍有限制。 ::html::keywords args Side effect only. 在调用 ::html::head 之前调用它来定义一个页面的关键字 META 标签。在 ::html::head 结果中将包含这个 META 标签。 ::html::mailto email ?subject? 产生一个到 mailto: URL 的超链接。 ::html::meta args Side effect only. 在调用 ::html::head 之前调用它来定义一个页面的 META 标签。 args 是一个 Tcl 样式的名称和值列表,用作 META 标签的 name= 和 value= 参数。在 ::html::head 结果中将包含这个 META 标签。 ::html::minorMenu list ?sep? 产生一系列超链接。list 是一个 Tcl 样式的名称和值列表,内容是链接的标签和地址。sep 是分隔每个链接的文本,默认是 " | ". ::html::minorList list ?ordered? 产生一个排序的或未排序的链接列表。list 是一个 Tcl 样式的名称和值列表,内容是链接的标签和地址。ordered 是一个布尔值,用来选择有序表或无序表,默认是 false. ::html::openTag tag args 将 tag 入栈,为它产生一个开标签。使用 ::html::closeTag 来从栈中弹出标签。 ::html::passwordInput ?name? 产生一个 PASSWORD 类型的 INPUT 标签。 name 默认为 "password". ::html::passwordInputRow label ?name? 格式化一个包含一个标签和一个 PASSWORD 类型的 INPUT 标签的表格行。name 默认为 "password". ::html::quoteFormValue value 使用 HTML 实体 (quotes, ampersand, and angle brackets.) 来替换 value 中的特殊字符,从而可以引用它们。 ::html::radioSet key sep list 产生一个 RADIO 类型的 INPUT 标签集合以及一个相关的文本标签。所有单选按钮共享同样的 key 作为它们的名字。sep 是用来分隔各元素的文本。list 是一个 Tcl 风格的标签,值列表。 ::html::radioValue name value 为一个 RADIO 表单元素产生一个 "name=name value=value" .如果 CGI 变量 name 值为 value, 那么 SELECTED 将被加入返回值中。 ::html::refresh seconds url 建立一个刷新 META 标签。在调用 ::html::head 之前调用它,HEAD 段中将包含一个 META 标签使得页面每 seconds 刷新一次。 url 是可选的,如果指定的话它指定了刷新间隔之后读取的新页面。 ::html::init ?list? ::html::init 接受一个 Tcl 样式的 name-value 列表,定义了名称是 "tag.parameter" 形式的对象的值。例如, "body.bgcolor" 默认将为 BODY 标签定义背景色。 ::html::row args 产生一个表格行,包含 TR 和 TD 标签。args 的每个值都置入各自的表格单元中。它使用了 ::html::cell. ::html::paramRow list ?rparam? ?cparam? 产生一个表格行,包含 TR 和 TD 标签。args 的每个值都置入各自的表格单元中。它使用了 ::html::cell. rparam 用作 TR 标签的参数,cparam 的值被传给 ::html::cell,作为 TD 标签的参数。 ::html::select name param choices ?current? 产生一个 SELECT 表单元素以及内置的 OPTION 标签。 name 和 param 用来产生 SELECT 标签。 choices 列表是一个 Tcl 样式的 name-value 列表。 ::html::selectPlain name param choices ?current? 类似 ::html::select 但 choices 是一个 Tcl 值的列表,用于 OPTION 标签。每个 OPTION 的标签和值是相同的。 ::html::submit label ?name? 产生一个 SUBMIT 类型的 INPUT 标签。 name 默认是 "submit". ::html::set var val 这个子程序与内置的 Tcl set 控制结构相似。主要区别是它返回 "" 因此可以在一个 HTML 模板文件中调用,不会产生奇怪的结果。另外的区别是它需要两个参数。 ::html::tableFromArray arrname ?param? ?pat? 产生一个 TABLE 和内置的行,来显示一个 Tcl 数组。param 是为 TABLE 标签准备的。pat 是一个 string match 模式,用来选择数组元素,默认是 "*". ::html::tableFromList querylist ?param? 产生一个 TABLE 和内置的行来显示 querylist, 一个 Tcl 样式的名称和值列表。param 是为 TABLE 标签设置的。 ::html::textarea name ?param? ?current? 产生一个 TEXTAREA 标签,包围 (wrapped) 在它的当前值 ::html::textInput name args 产生一个 TEXT 类型的 INPUT 表单标签。这使用了 ::html::formValue. 参数是你想在 INPUT 标签中添加的任何附加标签属性。 ::html::textInputRow label name args 产生一个 TEXT 类型的 INPUT 标签,和一个相关标签一起格式化到一个表格行中。参数是你想在 INPUT 标签中添加的任何附加标签属性。 ::html::title title Side effect only. 在调用 ::html::head 调用它来定义页面的 TITLE。 ::html::varEmpty name 如果指定名称的变量不存在或者为空值则返回 1 。 ::html::while test body 这个子程序类似于内置的 Tcl while 空值结构。但它返回联接的 body 而不是计算 body。循环的每一次都将另一个字符串联接到返回值中。
参见 SEE ALSO
ncgi, htmlparse
关键字 KEYWORDS
html, form, table, checkbox, radiobutton, checkbutton
[中文版维护人]
袁乙钧
[中文版最新更新]
2003/11/10
《中国 Linux 论坛 man 手册页翻译计划》:
http://cmpp.linuxforum.net
跋
本页面中文版由中文 man 手册页计划提供。 中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh