【发布时间】:2017-01-02 19:56:37
【问题描述】:
当我执行showlogsf 函数时,我收到一条警告说[object] object
var fdata = {fidval, fweightval, feggslaidval, fgraineatenval, fwaterval};
var fidval = document.getElementById('#fid');
var fweightval = document.getElementById('#fweight');
var feggslaidval = document.getElementById('#feggslaid');
var fgraineatenval = document.getElementById('#fgraineaten');
var fwaterval = document.getElementById('#fwater');
这是可以通过按钮点击触发的两个功能
$('#submitf').click(function (){
localStorage.setItem ("fdatak", JSON.stringify(fdata));
});
$('#showlogsf').click(function(){
var fdataload = JSON.parse(localStorage.getItem("fdatak"));
alert(fdataload);
});
});
【问题讨论】:
-
试试
console.table/log/dir? -
alert(JSON.stringify(fdataload)) -
我想输出从用户输入中保存的值(我保存为 fidval、fweightval、feggslaidval、fgraineatenval、fwaterval)
-
你不需要将
#与getElementById函数一起使用,它应该是document.getElementById('fid')而不是document.getElementById('#fid') -
所显示的代码存在(至少)三个问题:(1)您正在警告一个对象,因此您获得了该对象的默认
.toString()表示,即"[object] Object"。 (2) 你创建fdata之前 为其他变量赋值,所以fdata的所有属性都将具有undefined的值。一旦通过将该行移到末尾来解决此问题,您就会发现问题 (3) 您正在尝试保存 DOM 元素本身,而您真正想要的是它们的值。
标签: javascript jquery html arrays json