摘要:文本框獲得焦點(diǎn)時(shí),選中其中所有的文本思路利用焦點(diǎn)事件事件,在文本框獲得焦點(diǎn)時(shí),利用其方法選中所有文本。自動(dòng)切換焦點(diǎn)思路利用事件檢測(cè)用戶輸入新字符后,文本框內(nèi)的字符串是否已經(jīng)達(dá)到最大長(zhǎng)度,若達(dá)到最大長(zhǎng)度,則將焦點(diǎn)切換至下一個(gè)文本框。
JavaScript 表單腳本
通過 document.forms 可以獲得一個(gè)包含當(dāng)前頁(yè)面中所有表單的集合
HTMLFormElement 接口下面是這個(gè)接口常用的屬性和方法:
action:接受請(qǐng)求的 URL,等價(jià)于 HTML 中的 action 特性。
elements:返回表單中所有控件(或表單字段)的集合(HTMLFormControlsCollection)。需要注意的是,其中不包括 type 等于 image 的 input 元素。
enctype:請(qǐng)求的編碼類型,HTML 提供了3種編碼類型
application/x-www-form-urlencoded:默認(rèn)的編碼類型
multipart/form-data:在上傳文件時(shí)使用()
text/plain:在 HTML5 中引進(jìn),但是不建議使用
【參考】:What does enctype="multipart/form-data" mean?
length:表單中控件的數(shù)量
method:要發(fā)送的 HTTP 請(qǐng)求類型(get 或 post),等價(jià)于 HTML 中的 method 特性
name:表單的名稱,等價(jià)于 HTML 中的 name 特性
noValidate:是否驗(yàn)證表單,若它的值為 true,則表示禁止驗(yàn)證表單
reset():將該表單下的所有表單域重置為默認(rèn)值
submit():提交表單
重置或提交表單在 HTML 中,重置表單的方式有以下 2 種:
用戶點(diǎn)擊重置按鈕重置表單時(shí),會(huì)在重置表單之前觸發(fā) reset 事件。利用這個(gè)事件,我們可以取消不必要的重置操作。
當(dāng)然,也可以通過 JavaScript 調(diào)用 reset() 方法來重置表單,這個(gè)方法也會(huì)像單擊重置按鈕一樣觸發(fā) reset 事件。
var form1 = document.getElementById("form1"); form1.reset();
在 HTML 中,提交表單的方式有以下 3 種:
以上面這 3 種方式提交表單時(shí),瀏覽器會(huì)在將請(qǐng)求發(fā)送給服務(wù)器之前觸發(fā) submit 事件,這樣,我們就可以利用這個(gè)事件對(duì)表單進(jìn)行驗(yàn)證,并據(jù)以決定是否提交表單。
注意:submit 事件只能在 form 元素上觸發(fā),不能在提交按鈕上觸發(fā)!
Note that submit is fired only on the form element, not the button or submit input.
我們也可以通過 JavaScript 的 submit() 方法來提交表單,但是不會(huì)觸發(fā) submit 事件。因此注意在使用此方法之前先驗(yàn)證表單。
var form1 = document.getElementById("form1"); form1.submit();
See the Pen submit or reset event for form by percy (@percy507) on CodePen.
防止重復(fù)提交表單
在有提交按鈕的表單中,我們防止表單重復(fù)提交的方法有 2 種:1. 利用 submit 事件來禁用表單提交按鈕,2. 利用 onsubmit 事件處理程序取消后續(xù)的表單提交操作
表單控件共有的屬性和方法除了
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/80570.html
摘要:處理表格和提交等等重置表單重置表單應(yīng)該使用或當(dāng)用戶單擊重置按鈕重置表單時(shí),會(huì)觸發(fā)事件,可以在必要的時(shí)候取消重置操作另外也可以通過腳本調(diào)用方法重置表單,在調(diào)用方法重置表單時(shí)會(huì)觸發(fā)事件。在中,表單中新增加了屬性,自動(dòng)把焦點(diǎn)移動(dòng)到相應(yīng)字段。 HTMLFormElement繼承了HTMLElement,它自己獨(dú)有的屬性和方法有: acceptCharset:服務(wù)器能夠處理的字符集,等價(jià)于HT...
摘要:瀏覽器如何將數(shù)據(jù)發(fā)送給服務(wù)器對(duì)表單字段的名稱和值進(jìn)行編碼,使用和號(hào)分隔不發(fā)送禁用的表單字段只發(fā)送勾選的復(fù)選框和單選按鈕不發(fā)送為和的按鈕多選框中每個(gè)選中的值單獨(dú)一個(gè)條目在單擊提交按鈕提交表單的情況下,也會(huì)發(fā)送提交按鈕。否則不發(fā)送提交按鈕。 瀏覽器如何將數(shù)據(jù)發(fā)送給服務(wù)器: 對(duì)表單字段的名稱和值進(jìn)行URL編碼,使用和號(hào)(&)分隔 不發(fā)送禁用的表單字段 只發(fā)送勾選的復(fù)選框和單選按鈕 不發(fā)送t...
摘要:屬性可以設(shè)置文本框的初始值。特性則是用于指定文本框內(nèi)可以接受的最大字符數(shù)。與這個(gè)方法對(duì)應(yīng)的事件,在選擇了文本框中的文本時(shí)事件觸發(fā)。如阻止用戶選擇要調(diào)用之前或之后立即將焦點(diǎn)設(shè)置到文本框。 在HTML中,有兩種方式來表現(xiàn)文本框: 一種是使用input元素的單行文本,另一種是使用textarea的多行文本框。 使用input方式,必須添加type,設(shè)置為text。 size特性,可以指定文...
閱讀 2501·2021-10-12 10:11
閱讀 1252·2021-10-11 10:58
閱讀 3304·2019-08-30 15:54
閱讀 738·2019-08-30 13:59
閱讀 698·2019-08-29 13:07
閱讀 1433·2019-08-26 11:55
閱讀 2166·2019-08-26 10:44
閱讀 2692·2019-08-23 18:25