1. 程式人生 > >web開發中的form表單的原理與介紹

web開發中的form表單的原理與介紹

據我的理解:表單應該是得包括輸入文字框,提交按鈕,由他們組合而成就叫做form表單控制元件(前端開發中會提供多種多樣的控制元件)
<form action="Handler1.ashx" method="post" >
<p>客戶名稱: <input type="text" name="CustomerName" style="width: 300px" /></p>
<p>客戶電話: <input type="text" name="CustomerTel" style="width: 300px" /></p>
<p><input type="submit" value="提交" /></p>
</form>

包括了兩個輸入框,即“text”’型別,還有一個按鈕(即型別為“submit”就說明他是按鈕)

注:瀏覽器訪問伺服器端web的過程我覺得可以這樣理解,這個網站每個頁面就是一個檔案存在於遙遠的伺服器電腦裡面,瀏覽器輸入這些檔案的地址,此時瀏覽器就打開了對應的頁面(我覺得是瀏覽器下載下來了這個頁面檔案,然後呈現給使用者,而不是類似於遠端機的方式訪問的伺服器那兒的頁面),這時候我們點選了頁面內某個按鈕,是由瀏覽器來響應(注:因為不是遠端檢視的頁面,所以不是伺服器給出相應的響應)我們點的這個按鈕(如何響應,瀏覽器有一套解析這個html檔案的約定好的響應辦法,比如這裡就是根據表單的action="Handler1.ashx" method="post"這句html程式碼知道了應該如何響應)應該返回什麼資訊給伺服器那邊,這樣就實現了客戶端的瀏覽器和伺服器端的電腦的配合工作。我覺得這樣有個好處,瀏覽器端已經事先處理了響應方式,然後把成果資料傳送到伺服器端,伺服器端直接處理(比如進行一些計算)這些資料即可,這樣就把響應方式,資料處理分別在客戶端電腦和伺服器電腦分開處理了,減小了伺服器的執行負載了

action="Handler1.ashx" method="post"     // 這個意思是這個表單中的按鈕點了後,客戶端的瀏覽器就得把這個表單的內容往

/Handler1.ashx路徑提交,而且提交的方式是“post”,在伺服器端獲取這個瀏覽器發射來的資料的時候也是需要指定以“post”方式

在瀏覽器中呈現的樣子如下:

點選了提交按鈕後,瀏覽器根據html的那個表單form內的action="Handler1.ashx" method="post"程式碼,就知道,應該把客戶名稱和客戶電話傳送到地址為/Handler1.ashx(即伺服器端的處理程式所在伺服器電腦那兒的路徑),然後伺服器端的處理程式,   即.java檔案(web後端開發乾的事)內的函式進行相應的處理了。從下面可以看出瀏覽器到底發射了那些資料給伺服器:

看了客戶端的頁面和請求的內容,我們再來看看在服務端如何獲取瀏覽器提交的表單的輸入吧,程式碼如下:

string name = context.Request.Form["CustomerName"];
string tel = context.Request.Form["CustomerTel"];

程式碼很簡單,直接根據表單控制元件的name屬性訪問Request.Form就可以了。

 

其中參考部落格:

https://www.cnblogs.com/fish-li/archive/2011/07/17/2108884.html