2017-08-27 111 views
0

我的英語不夠好,所以我希望你明白我的問題形式獲取數據...如何從另一個頁面(JavaScript的)

我有一個網頁,「A」與形式。當我點擊Submit時,我希望它打開/重定向到'B'頁面,並且我想在頁面'B'上顯示'A'頁面中的表單數據...我想用JavaScript來做到這一點,而不是與jQuery左右。我試過window.opener或類似的東西......接下來,顯示示例代碼。

頁 'A':

<html> 
    <head> 
    </head> 
    <body> 
     <form method="post" name="form1" id="form1"> 
      <input type="text" name="field1"> 
      <input type="submit" name="submit" onclick="window.open('show.html');"> 
     </form> 
    </body> 
</html> 

頁 'B':

<html> 
    <head> 
    </head> 
    <body> 
     <script> 
      var x = opener.document.forms["form1"]["field1"].value; 
    document.write(x); 
     </script> 
    </body> 
</html> 

這真的很重要頁 'B' 可以從頁面 'A' 的形式顯示數據。我不能使用PHP或其他技術...:/

我希望你明白我在問什麼。謝謝!

**(至少對我來說)UPDATE

的解決方案是本地存儲,如薩加爾哈尼族指示。無論如何,感謝回答的人!

+0

爲什麼'javascript' ??爲什麼不使用'post'? – Ravi

+1

[如何使用JavaScript讀取發佈請求參數](https://stackoverflow.com/questions/1409013/how-to-read-the-post-request-parameters-using-javascript)可能的副本 – iceDragon

+0

您可以存儲本地/會話存儲中的表單數據對象,並在下一頁中訪問它。 –

回答

0

不能是PHP?使用PHP,您還可以將信息發送到頁面B並向用戶顯示所有信息。事實上,更方便用戶使用,因爲它是一個服務器端過程。

+0

我知道! PHP對這些東西超級友好,但是,我必須使用JavaScript,我的工程老師希望它成爲JS ... –

+0

好吧,我不是JavaScript專家,但我認爲最好的方法是存儲表單輸入作爲頁面A中提交操作後的cookie,並在頁面B中獲取cookie。我不認爲JavaScript可以在沒有將信息存儲在用戶瀏覽器中的情況下完成這些操作。但是,就像我說的,我不是一個JavaScript專家。 如何設置cookie?這很容易: https://stackoverflow.com/questions/14573223/set-cookie-and-get-cookie-with-javascript 如果我有幫助,請豎起大拇指 –

1
  • 決不可以得到POST從客戶端數據(使用JavaScript或任何其他客戶端語言)
  • 您必須使用服務器端語言來獲取數據後(如PHP,的NodeJS)。
  • 但你可以簡單地得到GET從客戶端(JavaScript)的數據。

以下是您需要的確切解決方案。

頁 'A'(a.html)

<html> 
     <head> 
     </head> 
     <body> 
      <form action="b.html" method="get" name="form1" id="form1"> 
       <input type="text" name="field1"> 
       <input type="submit" name="submit"> 
      </form> 
     </body> 
    </html> 

頁 'B'(b.html)

<script> 

alert(findGetParameter("field1")) 

function findGetParameter(parameterName) { 
    var result = null, 
     tmp = []; 
    location.search 
     .substr(1) 
     .split("&") 
     .forEach(function (item) { 
      tmp = item.split("="); 
      if (tmp[0] === parameterName) result = decodeURIComponent(tmp[1]); 
     }); 
    return result; 
} 

</script> 
相關問題