2011-12-06 88 views
49

我正在閱讀一本關於html開發的書(儘管我很新)那本書剛剛在一個月前(2011年11月)第一次發佈,作者是一位經驗豐富的編碼人員,並且可能使用#作爲表格中的操作是舊派?什麼是<form action =「#」>和<form method =「post」action =「#>做什麼?

因爲我試圖獲得要點的示例代碼,我不能不管SO尋找

<form action="#"> 

在谷歌上,並在www.w3schools.com找到form action="#"的解釋。

任何人都知道#動作對錶單的含義?

+4

http://w3fools.com/ – Jakub

+1

操作指定信息的發送位置。在這個例子中,你發現表單可能是用javascript提交的 –

+0

這看起來很糟糕的示例代碼,你幾乎從不需要這樣做。即使你使用JavaScript來提交表單,硬編碼一個假動作也是沒有必要的。 –

回答

50

行動通常指定文件/頁面表單提交(使用方法paramater(崗位描述的方法,獲得等))

#的行動表明,形式停留在同一頁面,只需在#後加上url即可。類似的用法發生在錨點中。例如,<a href=#">Link</a>將保持在同一頁面上。

因此,表單被提交到同一個頁面,然後處理數據等

+0

你爲什麼要這樣做的表單操作?我理解的一位主播,但不是表格。 – Nik

+3

@Nik,因爲有時您的服務器操作足夠簡單,可以在一個頁面上操作。在PHP中構建簡單的數據庫查找頁面時,我經常使用它。這比簡單的操作有兩頁更簡單。 –

+1

該頁面只發布回自己呢? – Nik

20

action=""解析到網頁的地址。 action="#"將解析爲頁面地址+ #,這將表示空的片段標識符。

做後者可能會阻止導航(新加載)到同一頁面,而是嘗試跳轉到片段標識符中帶有ID的元素。但是,由於它是空的,它不會跳到任何地方。

通常,作者只是將#放在類似於href的屬性中,而不會使用他們正在使用腳本的屬性。在這些情況下,他們可以使用action=""(如果驗證允許,也可以省略)。

3

#標籤可讓您將數據發送到同一個文件。我認爲這是一個三個步驟:

  1. 查詢一個數據庫來填充從
  2. 允許用戶在表單中更改數據
  3. 通過PHP腳本,重新提交數據到數據庫

使用方法='#',您可以在同一個文件中完成所有這些操作。

執行提交查詢後,頁面將使用來自數據庫的更新數據重新加載。

相關問題