Javascript 尝试将对象添加到存储阵列中,然后使用循环将其写出
我试图将一些“联系人”添加到本地存储中,每次添加新联系人时,我都想将其刷新到jquery列表中。如果我不使用localstorage,我会成功地做到这一点。但现在我总是有一些问题,不能解决它Javascript 尝试将对象添加到存储阵列中,然后使用循环将其写出,javascript,jquery,html,Javascript,Jquery,Html,我试图将一些“联系人”添加到本地存储中,每次添加新联系人时,我都想将其刷新到jquery列表中。如果我不使用localstorage,我会成功地做到这一点。但现在我总是有一些问题,不能解决它例如,现在我得到了这个错误 </head> <body> <div data-role="page" data-theme="b" id="page1"> <div data-role="header" id =
例如,现在我得到了这个错误
</head>
<body>
<div data-role="page" data-theme="b" id="page1">
<div data-role="header" id ="head">
<h1></h1>
</div> <!--HEADER-->
<div class="ui-content ui-body-c" role="main" align="left">
<a href="#popupBasic" data-rel="popup" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-plus" data-transition="pop">Add contact</a>
<div data-role="popup" id="popupBasic" data-theme="a">
<p>
<label for="uj">Name: </label>
<input type="text" id="name"/>
<label for="text">Phone: </label>
<input type="text" id="tell"/>
<a data-role="button" onClick="addContact()">add</a>
</p>
</div>
<br>
<div id="liss">
<ul id="listC" data-role="listview" data-autodividers="true" data-filter="true" data-inset="true">
</ul>
</div>
</div> <!--CONTENT-->
<div data-role="footer" align="center">
<a data-role="button" onClick="clear()">Delete memmory</a>
<a data-role="button" onClick="showThemAll()">load</a>
</div> <!--FOOTER-->
</div>
</body>
</html>
未捕获类型错误:未定义不是函数
</head>
<body>
<div data-role="page" data-theme="b" id="page1">
<div data-role="header" id ="head">
<h1></h1>
</div> <!--HEADER-->
<div class="ui-content ui-body-c" role="main" align="left">
<a href="#popupBasic" data-rel="popup" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-plus" data-transition="pop">Add contact</a>
<div data-role="popup" id="popupBasic" data-theme="a">
<p>
<label for="uj">Name: </label>
<input type="text" id="name"/>
<label for="text">Phone: </label>
<input type="text" id="tell"/>
<a data-role="button" onClick="addContact()">add</a>
</p>
</div>
<br>
<div id="liss">
<ul id="listC" data-role="listview" data-autodividers="true" data-filter="true" data-inset="true">
</ul>
</div>
</div> <!--CONTENT-->
<div data-role="footer" align="center">
<a data-role="button" onClick="clear()">Delete memmory</a>
<a data-role="button" onClick="showThemAll()">load</a>
</div> <!--FOOTER-->
</div>
</body>
</html>
谢谢你的建议。
</head>
<body>
<div data-role="page" data-theme="b" id="page1">
<div data-role="header" id ="head">
<h1></h1>
</div> <!--HEADER-->
<div class="ui-content ui-body-c" role="main" align="left">
<a href="#popupBasic" data-rel="popup" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-plus" data-transition="pop">Add contact</a>
<div data-role="popup" id="popupBasic" data-theme="a">
<p>
<label for="uj">Name: </label>
<input type="text" id="name"/>
<label for="text">Phone: </label>
<input type="text" id="tell"/>
<a data-role="button" onClick="addContact()">add</a>
</p>
</div>
<br>
<div id="liss">
<ul id="listC" data-role="listview" data-autodividers="true" data-filter="true" data-inset="true">
</ul>
</div>
</div> <!--CONTENT-->
<div data-role="footer" align="center">
<a data-role="button" onClick="clear()">Delete memmory</a>
<a data-role="button" onClick="showThemAll()">load</a>
</div> <!--FOOTER-->
</div>
</body>
</html>
HTML页面:
</head>
<body>
<div data-role="page" data-theme="b" id="page1">
<div data-role="header" id ="head">
<h1></h1>
</div> <!--HEADER-->
<div class="ui-content ui-body-c" role="main" align="left">
<a href="#popupBasic" data-rel="popup" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-plus" data-transition="pop">Add contact</a>
<div data-role="popup" id="popupBasic" data-theme="a">
<p>
<label for="uj">Name: </label>
<input type="text" id="name"/>
<label for="text">Phone: </label>
<input type="text" id="tell"/>
<a data-role="button" onClick="addContact()">add</a>
</p>
</div>
<br>
<div id="liss">
<ul id="listC" data-role="listview" data-autodividers="true" data-filter="true" data-inset="true">
</ul>
</div>
</div> <!--CONTENT-->
<div data-role="footer" align="center">
<a data-role="button" onClick="clear()">Delete memmory</a>
<a data-role="button" onClick="showThemAll()">load</a>
</div> <!--FOOTER-->
</div>
</body>
</html>
姓名:
电话:
”;
localStorage.contacts.push(AreYouHuman);
$(“#listC”)。追加(liss);
$(“#listC”).listview(“刷新”);
}
函数clear()
{
localStorage.clear();
}
函数showThemAll()
{
if(localStorage.contacts)
{
var contacts=JSON.parse(localStorage.contacts);
对于(i=0;i”;
联系人:推送(AreYouHuman);
localStorage.contacts=JSON.stringify(contacts);
$(“#listC”)。追加(liss);
$(“#listC”).listview(“刷新”);
}
localStorage
仅适用于字符串。使用JSON存储数据。好的,我现在就得到了它,因此可以使用本地存储(或类似于本地存储)执行我想要的操作?是否可以将字符串数组添加到localstorage?正如我所说的:使用JSON。并存储JSON而不是数组。使用JSON.stringify
将对象转换为JSON。澄清并结合想法:IsmaelMiguel和balajisoundar是正确的。JSON.stringify用于存储,JSON.parse用于检索。localstorage将正常工作。im否我不确定我是否理解这一点,或者它向我显示了一个错误该怎么做?var contacts=(localStorage.contacts)?JSON.parse(localStorage.contacts)| |[];抱歉!这是个错误。我已经更新了代码。var contacts=(localStorage.contacts)?JSON.parse(localStorage.contacts):[]
我仍然认为有些东西不完全是它应该是什么样子,现在它是可编译的,但是当我尝试添加一些联系人时,它会给我未捕获的语法错误:意外的标记
检查这把小提琴。我已经为演示硬编码了值。
</head>
<body>
<div data-role="page" data-theme="b" id="page1">
<div data-role="header" id ="head">
<h1></h1>
</div> <!--HEADER-->
<div class="ui-content ui-body-c" role="main" align="left">
<a href="#popupBasic" data-rel="popup" class="ui-btn ui-shadow ui-corner-all ui-btn-icon-left ui-icon-plus" data-transition="pop">Add contact</a>
<div data-role="popup" id="popupBasic" data-theme="a">
<p>
<label for="uj">Name: </label>
<input type="text" id="name"/>
<label for="text">Phone: </label>
<input type="text" id="tell"/>
<a data-role="button" onClick="addContact()">add</a>
</p>
</div>
<br>
<div id="liss">
<ul id="listC" data-role="listview" data-autodividers="true" data-filter="true" data-inset="true">
</ul>
</div>
</div> <!--CONTENT-->
<div data-role="footer" align="center">
<a data-role="button" onClick="clear()">Delete memmory</a>
<a data-role="button" onClick="showThemAll()">load</a>
</div> <!--FOOTER-->
</div>
</body>
</html>