2012-10-14 61 views
0

我有一個HTML表單(稱爲form.html)和一個JavaScript函數,這樣當提交表單時,將顯示該表單中的信息。
現在我想要所有這些信息將顯示在新的HTML頁面(稱爲confirm.html),我應該從哪裏去?提交HTML表單來在新的頁面中顯示輸入的信息

注:沒有PHP或切斷端或任何真正嚴肅的關係,它只是簡單的離線HTML格式的問題,我只是在同一文件夾2 HTML的地方,我會測試它在我的瀏覽器,這是它。唯一讓我擔心的是如何在confirm.html文件中使用form.html文件中的信息,因爲它們顯然是分開的。

非常感謝你,這是我的form.html(我沒有confirm.html還)

<HTML> 
     <HEAD> 
     <TITLE>Contact</TITLE> 

     <script type="text/javascript"> 

      function addtext() 
      { 
      var fname = document.myform.first_name.value; 
      var lname = document.myform.last_name.value; 
      var email = document.myform.email.value; 

      document.writeln("Thank you! You have just entered the following:"); 
      document.writeln("<pre>"); 
      document.writeln("First Name : " + fname); 
      document.writeln("Last Name  : " + lname); 
      document.writeln("Email Address : " + email); 
      } 
     </script> 
     </HEAD> 
     <BODY> 

     <center> 
<b>CONTACT US</b> <br></br> 
<form name="myform"> 

    <label for="first_name">First Name </label> 
    <input type="text" name="first_name" maxlength="50" size="30"> 
    <br> 
    <label for="last_name">Last Name </label> 
    <input type="text" name="last_name" maxlength="50" size="30"> 
    <br> 
    <label for="email">Email Address</label> 
    <input type="text" name="email" maxlength="80" size="30"> 
    <br> 
    <input type="submit" value="Submit" onClick="addtext()"> 

</form> 

    </BODY> 
    </HTML> 
+0

基本思想是,這將使用服務器端腳本語言,如PHP,ASP或類似的... – jtheman

回答

1

退房的JavaScript window對象:http://www.devguru.com/technologies/javascript/10855.asp

它有一個屬性location,如果你寫進去,你的瀏覽器將重定向:

window.location = "http://www.google.com"; 

不過請注意,這將不是將您的數據發佈到confirm.html。如果沒有服務器端腳本,你試圖做什麼不是很有用。 HTML表單將使用CGI(通用網關接口)將數據發送到服務器,然後可以處理該信息。如果您使用file://協議(如您似乎在做的那樣;所有本地靜態文件),則沒有服務器端可以處理數據,只有JavaScript。

如果使用GET方法通過CGI發送數據,則可以使用javaScript從URL中提取數據(如另一個question中所述)。要做到這一點,只需更新您的form這樣的:

<form action="confirm.html" method="get"> 

,不要把提交按鈕一個onClick處理程序,就讓它提交。

儘管如此,還有很多其他工具可以滿足這項工作:服務器端腳本語言,例如PHP,ASP,JSP。對於本地設置,最好的方法是使用XAMPP

+0

你能更具體嗎?我不想上網,只想去confirm.html。我應該使用什麼,它是:window.location =「confirm.html」; ? –

+0

我認爲它會是'window.location =「http://yourserver/confirm.html」'。如果你想使它更便攜一點,你可以使用一些字符串替換。但是,你有什麼嘗試? –

+0

你可能想再次看到我的問題,我已經改變了一段時間。謝謝! –

1

如果你不想依賴服務器端技術,這會變得更加複雜(我可能會添加一些黑客技巧)。也許最簡單的將是產生在提交這樣一個網址 -

http://localhost/confirm.html?first_name=val1&last_name=val2&email=val3 

然後添加一些代碼來confirm.html來解壓這一點。 Here's一個相關的問題,你可能會發現有幫助。

如果你讓我有一段時間的社論,你到底想要做什麼?如果這只是一個個人項目,看看html如何工作,那麼我強烈建議開始瞭解服務器端技術 - 一旦你開始想要處理用戶數據和持久狀態,你幾乎被迫使用服務器。網頁設計非常無國界,如果不使用服務器,或者通過一些非常複雜的DOM更新技術,無論如何都依賴專門的服務器文件,您都無法傳遞頁面之間的變量。您可以使用現有技術在本地運行MySQL服務器,如果您有興趣擴展您對Web技術的知識,這是不可避免的一步。

+0

我完全理解你說的話,因爲我已經在php中使用數據庫(mySQL和PhPmyAdmin)完成了一個網站。但說實話,我是java腳本的新手,並試圖找到當您點擊form.html上的提交按鈕時,您將通過僅使用Javascript函數顯示confirm.html顯示您輸入的內容的方式。你可以更具體的「添加一些代碼confirm.html解壓縮」? –

+0

這裏的基本想法是,你不能直接在頁面之間傳遞信息,但是你可以創建一個包含更多信息而不是加載哪個頁面的URL。所以,你必須首先將這些數據添加到表單提交中的URL上,然後解壓縮它。我在答案中提供的鏈接提供了從URL獲取變量的功能。或者,您可以嘗試[URI.js](https://github.com/medialize/URI.js)這樣的庫,它有一些非常好的功能來操縱這種東西。 – Bubbles

相關問題