課程任務
- form表單有什么作用?有哪些常用的input 標簽,分別有什么作用?
HTML 表單用于搜集不同類型的用戶輸入。
常見input標簽及其作用:
<input type="text">:定義用于文本輸入的單行輸入字段(默認寬度為20個字符)
<input type="password">:定義密碼字段
<input type="radio">:定義單選按鈕,允許用戶在有限數量的選項中選擇一個
<input type="checkbox">:定義復選框
<input type="submit">:定義用于向表單處理程序提交表單的按鈕。
<input type="button">:定義按鈕
<input type="number">:用于應該包含數字值的輸入字段
<input type="date">:用于應該包含日期的輸入字段
<input type="color">:用于應該包含顏色的輸入字段,根據瀏覽器支持,顏色選擇器會出現輸入字段中。
特別注意的一個類型:
type=hidden
通常稱為隱藏域:如果一個非常重要的信息需要被提交到下一頁,但又不能或者無法明示的時候。
總之,你在頁面中是看不到hidden在哪里。最有用的是hidden的值。
<form name="form1">
your hidden info here:
<input type="hidden" name="yourhiddeninfo" value="cnbruce.com">
</form>
<script>
alert("隱藏域的值是 "+document.form1.yourhiddeninfo.value)
</script>
(舉例:這個屬性常常被用在表單提交時生成一個隨機的碼,服務器可以根據這個碼驗證請求是否過期,用于防止惡意的多次請求發送。)
- post 和 get 方式的區別?
- 安全性
如果用get提交一個驗證用戶名和密碼的form,一般認為是不安全的,因為用戶名和密碼將出現在URL上,進而出現在瀏覽器的歷史記錄中。
顯然,在對安全性有要求的情況下,應該使用post。 - 提交數據的長度
IE將請求的URL長度限制為2083個字符,從而限制了get提交的數據長度,如果URL超出了這個限制,提交form時IE不會有任何反映。
3.緩存
由于一個get得到的結果直接對應到一個URL,所以get的結果頁面有可能被瀏覽器緩存,而post一般不能。
正確使用:
如果提交請求純粹只是從服務器端獲取數據而不是進行其他操作,并且多次提交不會有明顯的副作用,應該使用get。
比如:搜索引擎的查詢(http://www.google.com/search?q=abc)
如果提交這個請求會產生其他操作和影響,就應該使用post。
比如:修改服務器上數據庫中的數據;發送一封郵件;刪除一個文件等
參考:form表單中method的get和post區別
3.在input里,name 有什么作用?
name 屬性規定 input 元素的名稱,只有設置了 name 屬性的表單元素才能在提交表單時傳遞它們的值。
- radio 如何 分組?
把radio同組的name屬性設為相同。
舉例:
<input type="radio" name="sex" value=“man">男
<input type="radio" name="sex" value="woman">女
- placeholder 屬性有什么作用?
placeholder屬性能夠讓你在文本框里顯示提示信息,一旦你在文本框里輸入了什么信息,提示信息就會隱藏。
6.type=hidden隱藏域有什么作用? 舉例說明
隱藏域在頁面中,用戶是不可見的,在表單中插入隱藏域的目的在于收集或發送信息,以利于被處理表單的程序所使用。
具體的例子 問題1已經簡單介紹,不再贅述。
- 寫一篇博客簡單介紹 HTML 表單的用法,附上博客鏈接
8.實現如下表單,附上預覽地址。其中性別和取向是單選,愛好是多選
作品:用jsbin實現