过期域名预定抢注

 找回密碼
 免费注册

XHTML與CSS入門經典 從零開始系列教程!

[複製鏈接]
 樓主| 發表於 2007-8-25 17:38:38 | 顯示全部樓層
10、表單form ──文本框和其他由用戶輸入的構件
. q2 O3 {! n/ K4 i/ T1 g+ a1 N6 c8 }$ B0 F7 z% t9 g
表單可以用來在網頁中發送數據,特別是經常被用在聯繫表單——用戶輸入信息然後發送到Email中。
( Y) w: m4 O8 w* T: q: M: V$ @( A  ?
表單本身是沒有什麼用的。這需要編一個程序來處理輸入表單中的數據。這也超出了本站指南的範圍。如果使用網絡服務器來放置HTML,你能夠自助地找到一些簡單的教程,開發一個服務器端的程序使一個發送到Email的表單工作。5 O7 q( F/ Z$ o6 U& X5 M9 j

! T3 C: L( J/ R* J2 j1 ^0 f實際用在HTML中的標籤有form、 input、 textarea、 select和option。
3 y2 T- Q9 ~: m' S3 p9 `! }; ]' d% C2 i8 ^) M
表單標籤form定義的表單裡頭,必須有行為屬性action,它告訴表單當提交的時候將內容發往何處。0 r& Q# B  I2 h7 j1 z2 n
; `- U" |6 x; K8 }! _% {, z, m! f6 a
可選的方法屬性method告訴表單數據將怎樣發送,有get(默認的)和post兩個值。常用到的是設置post值,它可以隱藏信息(get的信息會暴露在URL中)。
3 r' `! n' G* S: k; J5 e9 d4 t. Q9 u* c
所以一個表單元素看起來是這樣子的:& v/ [+ ]4 E5 I

0 G* ?! h/ n6 S1 `& ^! t
- ^/ d4 k4 H& }' ^2 V. A3 I9 F: T" k5 S: S5 T2 J9 u$ g
Example Source Code [www.cn-webmaster.cn]3 i, N# D. a& `/ e) a
<form action="processingscript.php" method="post"> </form>
) X* T5 @  D: _% P! t . Q2 s; c# F+ N- q
input標籤是表單世界中的「老大」。有10種形式,概括如下:3 |1 r  B# @  v" w4 a, o0 `. E+ L9 T1 K

+ L6 }. C8 ]0 \3 E- d9 l5 G■ <input type="text" />是標準的文本框。它可以有一個值屬性value,用來設置文本框裡的默認文本。 9 @; p8 b$ h5 [/ u
■ <input type="password" /> 像文本框一樣,但是會以星號代替用戶所輸入的實際字符。
# y  L- m3 D: m; A+ i& ?  E  e  e■ <input type="checkbox" />是復選框,用戶可以快速的選擇或者不選一個條目。它可以有一個預選屬性checked,像這樣的格式<input type="checkbox" checked="checked" />. 3 j1 Q4 ?  [% J. D7 l1 P  f
■ <input type="radio" /> 與復選框相似,但是用戶只可在一個組中選擇一個單選按鈕。它也有一個預選屬性checked,使用方法跟復選框一樣。
) _" R: K3 M% {4 m4 u1 x■ <input type="file" /> 是展示你電腦上的文件的一個區域,就像你在一個軟件中打開或者保存一個文檔一樣。 4 X% S9 N2 W& l* O
■ <input type="submit" /> 是一個被點擊後提交表單的按鈕。你可以用值屬性value來控制按鈕上顯示的文本(下面的button和reset類型也可以這樣,稍後介紹),如下: <input type="submit" value="Ooo. Look. Text on a button. Wow" />. - {7 y8 Z9 H7 Y9 w  S1 C
■ <input type="image" />以圖像代替按鈕文本,src屬性是必須的,像img標籤一樣。 * X6 y& S' ~/ R& k1 @
■ <input type="button" />是一個如果沒有其他代碼的話什麼都不做的按鈕。 . |& v4 s4 t* B0 m8 L. [5 f* q; {
■ <input type="reset" /> 是一個點擊後會重置表單內容的按鈕。 ( ~# d6 N! Y7 o# `; `+ s
■ <input type="hidden" /> 不會顯示任何東西,它用來傳輸諸如用戶正在用的頁面的名字或者Email地址等表單必須傳輸的東西。
' p+ c% A# Z- L- z2 R注意輸入標籤input也是用「/>」自關閉的。
& @7 b/ h! V# U2 T: z  X. S  u. j; \6 b( ~- n; o& c
多行文本輸入框標籤textarea基本上就是一個比較大的文本框。它必須有行屬性rows和列屬性cols,用法像這樣:
' |, \# @1 G5 Y& t( c6 E8 X) o' H

6 ~8 b* w% L( C2 ~& d Example Source Code [www.cn-webmaster.cn]; I/ a/ M' A! c$ f5 L. q, ^
<textarea rows="5" cols="20">A big load of text here</textarea>
3 E% ~/ [1 S) Q) `5 r' X
  Y! D' L- w" o( w選定標籤select與選項標籤option一起可以製作一個下拉選框。是這樣工作的:
8 Y& M8 W1 r" g7 c( G( G* m* b
; ]% I# [2 @  [$ z
: l$ s/ J0 Q- R3 k+ } Example Source Code [www.52css.com]" g3 f* B; g* Z2 Z
<select>
. m0 a. |: V- f6 c! H8 k  C" `<option value="first option">Option 1</option>
$ N+ ^; l: O6 ]' `; j<option value="second option">Option 2</option>
9 L  y0 Y# K0 `* b! x& F/ d5 ^<option value="third option">Option 3</option>
5 S1 d5 K2 v( y  o! h# e</select>
1 X: p3 R4 |+ O3 l5 W" c$ A$ y& {- Z% I' x7 l  c% {1 n
當表單被提交時,被選中選項的值將被發送。
( q/ V6 ]9 \0 ], U2 E9 q3 {8 y
0 h6 i6 e/ x. d. P與復選框和單選按鈕的預選屬性checked一樣,選項標籤option也有一個預選屬性selected,它可以用在這樣的格式中:<option value="mouse" selected="selected">Rodent</option>。- t4 l, K* p3 W( _0 g! a

$ k2 b8 c0 p6 ^; ]$ E7 L* E上述的標籤中在網頁中看起來都不錯,但是,如果你有一個程序來處理這個表單,這些標籤都不起作用。這是因為,表單字段需要名稱。所以所有的字段中都需要增加名稱屬性name,比如 <input type="text" name="talkingsponge" />。: [. m$ G, [9 ?
: w7 {; J4 @  _7 N1 I7 p6 _
一個表單看起來應該像下面這樣(注意:這個表單不會工作,除非有一個用來提交數據的「contactus.php」的文件,它位於表單標籤form的行為屬性action中。)
# Q5 {, H/ R+ V) H6 A4 U' Q& P: Z. i6 |
2 i! d# q' R* R& k& g, ^- I
Example Source Code [www.cn-webmaster.cn]2 a$ T+ a/ U4 U7 s9 f/ K
<form action="contactus.php" method="post">
/ c3 z; U' W# {<p>Name:</p>' N$ ?) W: o4 J3 R, l
<p><input type="text" name="name" value="Your name" /></p>
$ j* i1 R9 H% N* Z- e& X<p>Comments: </p>
: W$ Q0 u- j/ O) e% p4 q3 b<p><textarea name="comments" rows="5" cols="20">Your comments</textarea></p>
$ v2 `4 D3 _# |% f2 z7 `<p>Are you:</p>- P! j2 z4 h2 r/ v5 O
<p><input type="radio" name="areyou" value="male" /> Male</p>
/ {. W  k/ N8 `, G3 W% b<p><input type="radio" name="areyou" value="female" /> Female</p>& f) y' a( F# c
<p><input type="radio" name="areyou" value="hermaphrodite" /> An hermaphrodite</p>
$ y- \& R! E. B# D7 b2 J<p><input type="radio" name="areyou" value="asexual" checked="checked" /> Asexual</p>
: h1 v+ `  a' L9 R% L<p><input type="submit" /></p> <p><input type="reset" /></p>
/ \7 T2 i: U- a# v/ G</form>
% }3 ^+ v( }1 M+ c, [
. C3 ^/ H, X* }" H, e在HTML高級教程中還有更複雜的高階水平教程等著你,如果你想進一步瞭解和學習.
回復 给力 爆菊

使用道具 舉報

 樓主| 發表於 2007-8-25 17:39:15 | 顯示全部樓層
11、綜合應用__把上面所有的要素堆積起來' z, m5 ]- V# W) e9 j

9 ?( P( w& x/ f0 ]! {5 v- l如果你業已全部瀏覽HTML初級指南的全部頁面,學習完畢初級指南,你事實上已經是一個能幹的HTMLer了。
0 M- _2 ?0 D% m, x1 M0 Y$ K* q+ j1 T* p1 w0 n
實際上,基於許多人編寫HTML都相當差勁的事實,你應該做得比他們更好。
  z* }# f$ K4 |, I# r
2 w, ^0 L! B% ^: {下面的代碼把前面所教授的綜合在一起了:
; O: L  K- C1 p
: h5 n! o, ~, ^. l: j
5 P$ X$ c! \" D- c2 z$ s* s8 L$ r0 g& `  \7 C1 @
Example Source Code [www.cn-webmaster.cn]
* r+ f" ~6 y; P0 _<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 4 M4 X9 F6 y! p
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">8 a- I+ P) {7 h2 e
<html>
$ B$ R$ r# z+ l+ K) R5 Q<head>3 c8 R, O3 E6 v, W" J
<title>我的第一個網頁</title>. J- m. L) I+ }6 s1 ]
<!-- 順便說一下,這是註釋 -->7 m; V% p* J! ?2 L6 I
</head>
3 g8 t9 ~$ u4 D- \) p/ ]: n<body>
% X; R5 ^/ i* G- m7 N' J<h1>我的第一個網頁</h1>4 M9 P. e" t/ J6 ^/ k
<h2>這是什麼</h2>
# S7 n2 w, S+ c' K1 d<p>用HTML組合起來的簡單網頁。 <strong>A用HTML組合起來的簡單網頁。</strong> 用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。用HTML組合起來的簡單網頁。</p>
* @% h/ \1 o6 K1 [) m( l<h2>目的</h2>0 G6 ~- B8 g5 w3 E/ _% G7 R1 f, T
<ul>9 W) i: Y) ~( e; c# s
<li>學習HTML</li>) s$ }. B" }+ f
<li> 顯擺,炫耀
6 l1 \* {! `6 C, I4 i6 ^  <ol>
/ Z6 d5 Y/ T, X <li>向老闆</li>
. W; [$ u2 ~/ C$ `5 p7 \ <li>向朋友</li>5 f* E! v. X& L4 w, A) S4 H
<li>向我的小貓</li>* H5 H! K; @6 F, U& ]
<li>給我腦中多嘴的小鴨子</li>
* V  o8 `% A) u" \- E8 [% j" n </ol></li>% m! `) M, w( A6 V( t: v1 _8 k" i
<li>因為我已經愛上了我的電腦,我想給她點HTML愛情調料。</li>+ i, _" b( C8 d2 g1 @' f
</ul>( D. R$ q- g0 w
<h2>在哪裡可以找到教程</h2>0 i' {) ]$ J( l2 s, E# p! w  Z" y; |
<p><a href="http://www.google.com"><img src="http://www.google.com/intl/zh-CN_ALL/images/logo.gif" width="88" height="31" alt="Neo1 logo" /></a></p>
2 w. h( D: k. {$ O* P<h2>一些隨意的表單</h2>
3 T( j" _' R( ~, c# T5 r  j" i<table border="1">) ~0 Z- n; n% S3 ^" C7 ~0 N
<tr>' U# ~! B2 K4 N; S1 u4 a# X
<td>Row 1, cell 1</td>
# U& z( R) u/ \) D4 T<td>Row 1, cell 2</td>
* s; l9 B4 s" k: D1 ]2 O' X+ ]<td>Row 1, cell 3</td>
! N4 O2 E/ {' u3 J) g% a</tr>
6 K* ^9 V" k& r& x4 J<tr>) g9 v- b* ~/ d$ r8 E; y
<td>Row 2, cell 1</td>* {7 k* d# `# _: @- o4 W1 E
<td>Row 2, cell 2</td>
* Q1 L$ `( l6 O' Z, r3 C) o4 ]9 R# K<td>Row 2, cell 3</td>
1 {2 \. `1 q- z% C) H- ~. M</tr>
+ G- x5 L7 h, z5 o/ G; K1 g# b4 A<tr>6 n9 e7 V7 I, }( x, R; |
<td>Row 3, cell 1</td>: l' d: P! O2 b. a) W4 z7 e
<td>Row 3, cell 2</td>
" z$ K" y  H" k" r$ D<td>Row 3, cell 3</td>
& D- g1 Q% C! q</tr>
$ N0 a( f  r  m% [<tr>! }( }; y+ f/ Y2 O, B
<td>Row 4, cell 1</td>% b. l- i* \9 C$ H4 U
<td>Row 4, cell 2</td>
9 z/ W* w3 N! e4 q8 c9 i<td>Row 4, cell 3</td>
4 y* ^9 k' }: ~</tr>$ `6 y& U; Q& l; _- \/ J3 M
</table>& M: E& O) V' p# o% F6 f) p' {
<h2>一些隨意的表單</h2>* E1 ?, {+ t+ g7 |, _
<p><strong>注意:</strong> 看起來似乎很重要的部分,但實際上什麼都不做</p>9 L2 p# \, ?1 Q: d  }; E
<form action="somescript.php" method="post">& V- a# X/ I) ]4 _& ^, V
<p>名字:</p>6 A$ }# D, O/ r9 O( n& n$ F
<p><input type="text" name="name" value="你的名字" /></p>' \4 x; Y1 a% V* B8 |
<p>評論:</p>
; g6 t) N! z* f6 L9 b! o<p><textarea rows="10" cols="20" name="comments">在這裡寫下你的評論</textarea></p>
- D8 j/ ^8 I$ Y) w& R8 c<p>你是:</p>
3 g$ s8 c# [$ u<p><input type="radio" name="areyou" value="male" /> 男性</p>1 q+ @7 d9 G9 C+ l
<p><input type="radio" name="areyou" value="female" /> 女性</p>/ N$ O& S: X* B0 {1 \0 b. S( n
<p><input type="radio" name="areyou" value="hermaphrodite" /> 雙性</p>
4 d# T) ~* @  ~$ K# M0 y% y/ O# _<p><input type="radio" name="areyou" value="asexual" checked="checked" /> 無性</p># o' P5 R' m5 I% @
<p><input type="submit" /></p> <p><input type="reset" /></p># ^; S; {1 \6 a) o3 b
</form>
  s* P- r( y' E8 O</body>6 L6 k/ S; b0 e/ \4 ?( R+ l" g
</html>
, P, t5 c. g  S9 p
* Y3 b1 Z1 @& M8 \; M% R就這樣。保存文件,然後在瀏覽器中查看──這是理解所有工作原理的最好方法。繼續吧!4 \! d1 Z4 X% D8 j
3 f# J, `( Q/ `
感到滿意的話,你可以繼續學習CSS中級教程了。
回復 给力 爆菊

使用道具 舉報

發表於 2007-8-28 01:39:23 | 顯示全部樓層
回復 给力 爆菊

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 免费注册

本版積分規則

點基

GMT+8, 2026-2-15 12:20

By DZ X3.5

小黑屋

快速回復 返回頂部 返回列表