我的导航栏下拉列表中有一些链接都直接指向同一页面,但是根据所单击的链接,它应在此页面上选择特定的选择框选项。我决定将href链接值存储在本地存储中,并在使用jQuery加载链接页面时调用该值,但是在加载新页面时收到消息“ null”。
这是导航栏下拉链接的html:
<a href="newpage.php" data-select="option1">Jackets</a>
<a href="newpage.php" data-select="option2">Shoes</a>
<a href="newpage.php" data-select="option3">Shirts</a>
用于将所选值存储在本地存储中的JavaScript:
window.onload = function() {
var linkInput = $('a[href="newpage.php"]').click(function () {
($(this).data('select'));
localStorage.setItem("storelinkInput",linkInput);
}
newpage.php中的JavaScript:
window.onload = alert(localStorage.getItem("storelinkInput"));
var $select = $('#selector');
$select.val("storelinkInput");
newpage.php中选择框的HTML:
<form>
<select id="selector">
<option value="option1">Jackets</option>
<option value="option2">Shoes</option>
<option value="option3">Shirts</option>
</select>
</form>
老实说,我不确定这是使用本地存储的最佳解决方案,还是使用PHP更好。我们会向我指出正确方向的任何建议!
答案 0 :(得分:0)
感谢Lars的评论,我可以修复代码,现在它正在运行。如果有人正在寻找解决方案或类似的问题,这里是功能代码:
这是导航栏下拉链接的html:
<a href="newpage.php" data-select="option1">Jackets</a>
<a href="newpage.php" data-select="option2">Shoes</a>
<a href="newpage.php" data-select="option3">Shirts</a>
用于将所选值存储在本地存储中的JavaScript:
$(document).ready(function(){
$('a[href="newpage.php"]').click(
function () {
var toStore = $(this).data('select');
localStorage.setItem("storelinkInput", toStore);
});
});
newpage.php中选择框的HTML:
<form>
<select id="selector">
<option value="option1">Jackets</option>
<option value="option2">Shoes</option>
<option value="option3">Shirts</option>
</select>
</form>
newpage.php中的JavaScript:
$('#selector').val(localStorage.getItem("storelinkInput"));
在html / PHP文件中的选择框之后放置第二个javascript(“ $('#selector')。val ...”)很重要。