如何从下拉列表中存储值,以便在没有操作的情况下在其他php页面中使用

时间:2014-04-28 09:17:53

标签: javascript php jquery html

我有这段代码 -

<html>
<head>
</head>
<body>
<select name="feature" id="Feature" onchange="myFunction()">
        <?php
        ?>
        <option value > Select Feature</option>
        <?php
        foreach($newFeature as $feat)
        {
            ?>
        <option value="<?php echo $feat;?>"><?php echo $feat;?></option>
            <?php
       }
         ?>
</select>
</form>
</body>
</html>


    <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
    <script type="text/javascript">
    function myFunction()
    {
    var x=document.getElementById("Feature");

}
</script>

这里我如何使用cookie或会话变量来存储选定的值并在其他php页面中使用它?

请指导

6 个答案:

答案 0 :(得分:1)

如果没有提交按钮,您可以将选定的值存储在jquery cookie中

$.cookie('key', 'value');

在下一个php页面中,您可以使用$ _COOKIE变量

获取此值

答案 1 :(得分:1)

您可以使用javascript写入浏览器localstorage。但它仍然需要将als请求参数发送到您的其他php页面。问题是php是服务器端。会话参数由您的php服务器保存。您可以在本地存储数据als字符串,但仍需要从客户端将其重新加载到新页面中。

Just an example for using localStorage
// save in the localStorage
if (window.localStorage) {
    var value = "hallo";
    localStorage.setItem("value", value);
}
// load the localStorage 
var value=localStorage.getItem("value");

您现在可以在我们的客户

中使用

答案 2 :(得分:1)

在这种情况下,最好使用cookie

我是为其他人做的,请帮助您了解Cookie的使用方法。 这样做是通过从cookie中获取所选值来保持页面刷新后设置的,您可以在所需的页面中获取它

  

HTML

   <select id="selectCurrency">
        <option value="1">US</option>
        <option value="98">RS</option>
        <option value="61">Ind</option>
    </select>

<强> Jquery的

//Fetching cookie you can do this in any other page 
$(document).ready(function(e){
var name = "Currency="; //Name of the cookie
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++)
  {
  var c = ca[i].trim();
  if (c.indexOf(name)==0) $('#selectCurrency').val(c.substring(name.length,c.length));
  }
});



//Setting Cookie
$('#selectCurrency').change(function(e)
{
    var cookieVal = "Currency="+$(this).val();
document.cookie = cookieVal ;

});

http://jsfiddle.net/AmarnathRShenoy/HM3Zj/9/

有关详情,请查看

http://www.w3schools.com/js/js_cookies.asp

答案 3 :(得分:1)

使用javascript cookies,在您的函数中设置cookie并在其他页面中获取此cookie。

这里是示例http://www.w3schools.com/js/js_cookies.asp

答案 4 :(得分:0)

您必须在选择框中使用this.value或替换

<select name="feature" id="Feature" onchange="myFunction(this.value)">

alert(x)之后添加此var x=document.getElementById("Feature");以进行检查

答案 5 :(得分:0)

你可以通过ajax将表单数据提交给php进行处理,你可以使用php创建cookie或会话

实施例

$('#Feature').change(function(){
   $.ajax({
     type:'POST',
     data: $(this).serialize(),
     url: '/process',
     success:function(data,textStatus, jqXHR){
         //do something
     }
    });
});

PHP:

$_SESSION['feature'] = $_POST['feature'];