[問題] JavaScript存取表單資料

作者: tingmeow (雪爐喵)   2014-03-23 22:53:20
看O'REILLY的書 JavaScript深入淺出有點看不懂
在這一頁 p.293
存取表單資料
為了取用輸入表單的資料,首先需要區分表單中每個欄位。這點可利用HTML
碼的id或name屬性(或兩者並用)處理。
<input id="zipcode" name="zipcode" type="text" size="5">
表單欄位具有兩種識別方式的原因,均與取用表單單位的途徑有關
第一種途徑使用getElementById()--可取用網頁上任何組件的函式。
這個方式沒問題,但還有更簡單、更針對表單設計的途徑。
每個表單欄位都有一個form物件,可被傳給任何驗證表單資料的函式。
<input id="zipcode" name="zipcode" type="text" size="5"
onclick="showIt(this.form)">
form物件勵害的地方,在於它也是個陣列,負責儲存表單中所有欄位
但它的陣列元素並非利用數值索引儲存;而是使用欄位獨有、於name
屬性設定的識別字。假設form物件以引數theForm為名,傳給某個函式,
則輸入郵遞區號欄位(ZIP code)的值將以下列方式存取:
function showIt(theForm) {
alert(theForm["zipcode"].value);
}
作者: GoalBased (Artificail Intelligence)   2014-03-23 23:24:00
你是說為什麼html是this.form ShowIt裡為什麼不是一樣嗎
作者: RedMapleWing (闇夜 楓)   2014-03-24 18:10:00
this.form我的認知可能有錯,但我認為它指的是它父層的那個form,至於function裡的參數名稱,那只是要給一個參數名稱罷了,你隨便給他什麼值,這個值在這個function裡就會叫這個名字,不一定要跟呼叫functio時丟入的數值或物件同名(也很難同名,你的function又不是只寫給一個東西用

Links booklink

Contact Us: admin [ a t ] ucptt.com