当我清除保存在本地存储中的过滤值时,它不会显示所有寄存器,并且会在控制台中向我发送以下错误消息。
Query.Deferred异常:无法读取null的属性'id'TypeError:无法读取null的属性'id'
有人知道为什么会这样吗?
//这是我用来过滤所有值的功能
$(document).ready(function(){
var array = localStorage.getItem('values');
array = JSON.parse(array);
$("#id").val(array['id']);
$("#start_date").val(array['start']);
$("#end_date").val(array['end']);
filter();
});
///这是我无需过滤即可获取所有值的功能
function Getvalues() {
return {
'id' : $("#id").val(),
'start' : $("#start_date").val(),
'end' : $("#end_date").val(),
}
}
//用于将值保存在本地存储中的功能
function Saveinlocalstorage(key, value) {
localStorage.setItem(key, JSON.stringify(value));
}
//用于过滤值的功能
function filter() {
const filtervalues = Getvalues();
Saveinlocalstoage('values', filtervalues);
$.ajax({
type: 'post',
url: 'example1.php',
data: {
'oper' : 'example1',
...filtervalues
},
success: function (response) {
$('#tab-1').fadeOut(500);
$('#tab-1').html(response);
$('#tab-1').fadeIn(500);
},
error: function () {
swal({title: "Error",text: "ERROR", type: "error"});
}
});
}
//function to clear values filtered in localstorage
function Clearlocalstorage(){
localStorage.clear();
Getvalues();
}