2012-12-21 172 views
6

是否必須要求FORM標記中的action="abc.php"必須具有PHP,JSP,ASP文件?不能簡單的HTML代碼顯示在FORM提交的數據?HTML GET和POST方法

換句話說,

FILE:abc.html

<form method="post" action="xyz.html"> 
    <input type="text" name="name" id="name" value="Enter your name here" /> 
</form> 

OR

<form method="get" action="xyz.html"> 
     <input type="text" name="name" id="name" value="Enter your name here" /> 
</form> 

現在,在文件xyz.html,我可以顯示使用abc.html輸入的名稱只有 HTML代碼?

+3

,你不行,你需要一個服務器端語言來獲取發送到服務器的值。 – adeneo

+1

@adeneo我不完全同意......在** GET **參數的情況下,也可以用客戶端代碼讀取。雖然不是純粹的HTML,但基本的JavaScript可以做到這一點...檢查此問題:[在JavaScript中使用url的get參數](http://stackoverflow.com/questions/827368/use-the-get-parameter-當然,在** POST **參數的情況下,你的論點是真實的...... OP在這方面並不完全清楚,因爲標題說GET也是...... – ppeterka

+0

@ppeterka - 同意,您可以從瀏覽器獲取URI並從querystring中提取不同的值,但這需要javascript,並且僅通過使用諸如PHP之類的功能通過簡單的函數調用來打印值是沒有任何好處的。 – adeneo

回答

5

HTML本身無法訪問提交的POST/GET數據。你需要一個服務器端語言(PHP,Python,Ruby,.NET,...)將這些值放入HTML中。

這就是說,你可以張貼到一個HTML頁面,你將無法對它做任何事情。

您可以使用JavaScript到access GET variables,但不是POST。

+0

您可以使用javascript訪問查詢字符串 – ravi404

0

是的,你可以用純html + javascript來做到這一點。作爲一個例子,你可以通過使用jQuery來檢索http參數。更多信息可在這裏:

Get escaped URL parameter

+2

「僅使用HTML代碼」 –

+0

我認爲這意味着他沒有運行某種腳本語言(如PHP,ASP等)的服務器。最簡單的httpd服務器可以提供純html和純javascript。 – jap1968

2

使用這些服務器端擴展的目的是操縱從形式elments發送服務器上POST或GET方法的數據,但如果你只是想顯示在瀏覽器中輸入的數據,您可以將它發送到.html文件,因爲它們根本不需要操作。

3

你不能使用html來顯示它。你需要有一個像PHP,ASP.Net或Java等服務器端腳本語言...

2

不,你不能。導致數據傳輸到服務器,並且服務器不能用簡單的HTML代碼處理數據,除了PHP,PYTHON,JAVA等服務器語言。

2

您需要服務器端語言才能處理形成並從用戶那裏獲取數據。在PHP中,至少,據我所知,可以將action =「」留空,這意味着您將在同一頁面上處理表單。

0

您可以使用jQuery Ajax方法執行此操作。

 

$(document).ready(function(){ 
      ajaxFunction(); 
}); 
    function ajaxFunction() { 
     var postdata = jQuery("#form").serialize(); 
     jQuery.ajax({ 
      url: "xyz.html", 
      type: "POST", 
      data: postdata, 
      success: function(response){ 
        console.log(response); 
      }, 
      error: function(){ 
       console.log(response); 
      } 
     }); 
    } 

reference