Javascript 本地存储未存储/检索值
这是我的代码:Javascript 本地存储未存储/检索值,javascript,php,html,Javascript,Php,Html,这是我的代码: <select name="category" id="category" value="category" class="form-control ddplaceholder" style="width:220px;font-size:18px;font-family:Roboto;" onchange="document.form.submit();"> <script> var cat = localStorage.getI
<select name="category" id="category" value="category" class="form-control ddplaceholder" style="width:220px;font-size:18px;font-family:Roboto;" onchange="document.form.submit();">
<script>
var cat = localStorage.getItem('category');
localStorage.setItem('category', cat);
</script>
<option value="" disabled selected>Select Category</option>
<?php
$sth = $conn->prepare('Select name From category');
$sth->execute();
$data = $sth->fetchAll();
foreach ($data as $row ){
if($row['name']!="")
echo ' <option id=\"CategoryName\" nameCategoryNameVendorName\" value="' .$row['name']. '">'.$row['name'].'</option>';
}
?>
</select>
var cat=localStorage.getItem('category');
localStorage.setItem('category',cat);
选择类别
我希望在通过
onchange=“document.form.submit();”
提交页面后,仍能在下拉列表中检索下拉列表“category”的选定值。为什么没有发生?您需要在选择列表的onchange事件上设置本地存储值:
<select name="category" id="category" //other inline code not shown // onchange="setValue();document.form.submit();">
<script>
function setValue(){
var cat=document.getElementById('category').value;
localStorage.setItem('category', cat);
}
</script>
然后您可以重置选择列表的C值。首先在
localstorage
中设置值,然后在提交表单中设置值
<script>
function SetValue()
{
var cat = document.getElementById("category").value;
localStorage.setItem('category', cat);
document.forms[0].submit();
}
</script>
仍然在使用旧代码onchange=“document.forms[0].submit();”
在获取值之前,您是否已将值存储在localstorage
中?您不是这样存储的吗<代码>var cat=localStorage.getItem('category')代码>“为什么没有发生?”你怎么知道?当用户从下拉列表中选择一个值时,您应该首先将该值设置为category
。@feeela只有当用户从下拉列表中选择一个值时,该值才会发生。页面才会刷新,并且所选值不会放回下拉列表。无法工作。请尝试console.log()存储变量的值,以查看它是否存储到本地存储中-您也可以在开发人员控制台中查看存储对象并查看其中的值,因此这是我写的:`function SetValue(){var cat=document.getElementById(“类别”).value;localStorage.setItem('category',cat');document.forms[0].submit();}window.onload=function GetValue(){var cat=localStorage.getItem('category');document.getElementById('category')。value=cat;}`但该值没有保留。只需在控制台中运行此行,查看是否保留了实际值localStorage.getItem('category')代码>我在控制台中运行了它。它显示为空。你正在使用哪个浏览器?我正在使用谷歌浏览器。
<script>
function SetValue()
{
var cat = document.getElementById("category").value;
localStorage.setItem('category', cat);
document.forms[0].submit();
}
</script>
<script>
window.onload = function GetValue()
{
var cat = localStorage.getItem('category');
document.getElementById("category").value = cat;
}
</script>