如何使用JavaScript将<select>选项从page1传递到page2?

时间:2016-04-25 03:35:47

标签: javascript

我想从page1.html将所选值传递给下一个page2.html Page1.html: &lt; form action =“product.php”method =“POST”&gt; &lt; select name =“option”&gt;   &lt; option value =“product”&gt; product&lt; / option&gt;   &lt; option value =“event”&gt; event&lt; / option&gt;   &lt; option value =“organization”&gt; organization&lt; / option&gt;   &lt; option value =“movie”&gt; movie&lt; / option&gt;   &lt; option value =“book”&gt; book&lt; / option&gt;   &lt; option value =“review”&gt; review&lt; / option&gt;   &lt; option value =“recipe”&gt; recipe&lt; / option&gt; &LT; /选择&GT; &lt; input type =“submit”name =“submit”value =“GO”/&gt; &LT; /形式&GT; 如何使用POST方法创建一个将在Page2.html上接收所选选项的var? 谢谢, 奥弗

2 个答案:

答案 0 :(得分:0)

这样做的一种优雅方式是使用localStorage 你必须对HTML&amp;将此代码段放在js文件

<强> HTML

<form onsubmit = "someFunction()" > // A function which will be executed on submit
  //Rest of the code
</form>

JS

function someFunction(){
   if(typeof(Storage) !== "undefined") { // Checking is storage is supported
    localStorage.setItem("yourkey", "yourvalue");
   } else {
    // Take necessary action if not supported
   }
}

在第二页

var _myStoredItem = localStorage.getItem("yourkey");

除了使用localStorage之外,您还可以使用

例如 假设这是你的网址

http://www.myPage.com/product.php?myDate=someDate

并在第二页

var myVar = window.location.search.

如果有多个查询参数,则解析此查询字符串以获取所需参数。这需要form method ="GET"。由于您使用的是POST,这可能与您无关。

答案 1 :(得分:0)

在第2页中,添加一个隐藏的输入,其中包含从page1发布的选定值。 E.g:

<input type="hidden" id="selected_option" value="<?php echo $_POST['option'];?>" />

在第2页的页面加载时,即在第2页的客户端执行期间,获取值并将其设置为变量:

<强>第2页:

<html>
<head>
<script type="text/javascript">
    var globalVar;
    function pageLoad()
    {
        globalVar = document.getElementById("selected_option").value();
    }
</script>
</head>
<body onload="pageLoad()">
    <input type="hidden" id="selected_option" value="<?php echo $_POST['option'];?>" />
</body>
</html>