我有一个下拉列表,我填写了类似的值:
<form>
<select id="select_region" class="form-control" name="regions" onchange="loadPage(this.value);">
<?php
foreach ($regions as $region)
{
echo '<option value="'.$region->nom.'">'.$region->nom.'</option>';
}
?>
</select>
</form>
如您所见,有一个属性onchange
可以调用javascript函数。在此功能中,我重定向页面以在网址中包含所选项目。像那样:
function loadPage(param){
$string = "/kohana-v3.3.5/environment/region/"+param
self.location.href= escape($string);
}
问题是当它重新加载页面时,下拉列表总是显示列表的第一项。
所以我想要的是当用户选择一个选项时,页面会被重定向,但下拉列表会显示他选择的值。
我尝试使用jquery添加:
$("#select_region").val(param);
但是当页面被真实地加载时,它会被重置。
有人可以告诉我该怎么办?
编辑:
localstorage
的函数:
$(document).ready(function() {
var value_selected = localStorage.getItem("Select");
$("#select_region").val(value_selected);
});
function loadPage(param){
store_value(param);
$string = "/kohana-v3.3.5/environment/region/"+param
self.location.href= escape($string);
}
function store_value(value){
localStorage.setItem("value", value);
}
答案 0 :(得分:0)
您使用page.php?id=1254
之类的网址传递var,
或者查看localstorage
。
答案 1 :(得分:0)
您可以将值存储在localstorage中,如下所示
function store_value(value)
if(typeof(Storage) !== "undefined") {
localStorage.setItem("value", value);
} else {
// Sorry! No Web Storage support..
}
}
在loadPage
中调用此函数并传递所选下拉值的值。为了在页面加载时获得它的价值,
$(document).ready(function(){
var value_selected = localStorage.getItem('value');
$("#select_region").val(value_selected);
});