Javascript 如何在本地添加数据并通过其id添加值? HTML5本地存储(名称/值项对)演示 td,th{ 字体系列:monospace; 填充:4px; 背景色:#ccc; } #霍格{ 边框:1px点蓝色; 填充:6px; 背景色:#ccc; 保证金权利:50%; } #表中的项目{ 边框:1px点蓝色; 填充:6px; 边缘顶部:12px; 保证金权利:50%; } #表h2中的项目{ 字号:18px; 边际上限:0px; 字体系列:无衬线; } 标签{ 垂直对齐:顶部; } HTML5本地存储(名称/值项对)演示
价值: 姓名: 项目 *clear()删除所有项 函数doSetItem(){ var name=document.forms.editor.name.value; var data=document.forms.editor.data.value; var origData=localStorage.getItem(名称)| | 0; setItem(名称,parseInt(origData)+parseInt(data)); doShowAll(); } 函数doGetItem(){ var name=document.forms.editor.name.value; document.forms.editor.data.value=localStorage.getItem(名称); doShowAll(); } 函数doremovietem(){ var name=document.forms.editor.name.value; document.forms.editor.data.value=localStorage.removietem(名称); doShowAll(); } 函数doClear(){ localStorage.clear(); doShowAll(); } 函数doShowAll(){ var key=“”; var pairs=“NameValue\n”; var i=0;Javascript 如何在本地添加数据并通过其id添加值? HTML5本地存储(名称/值项对)演示 td,th{ 字体系列:monospace; 填充:4px; 背景色:#ccc; } #霍格{ 边框:1px点蓝色; 填充:6px; 背景色:#ccc; 保证金权利:50%; } #表中的项目{ 边框:1px点蓝色; 填充:6px; 边缘顶部:12px; 保证金权利:50%; } #表h2中的项目{ 字号:18px; 边际上限:0px; 字体系列:无衬线; } 标签{ 垂直对齐:顶部; } HTML5本地存储(名称/值项对)演示,javascript,html,local-storage,Javascript,Html,Local Storage,价值: 姓名: 项目 *clear()删除所有项 函数doSetItem(){ var name=document.forms.editor.name.value; var data=document.forms.editor.data.value; var origData=localStorage.getItem(名称)| | 0; setItem(名称,parseInt(origData)+parseInt(data)); doShowAll(); } 函数doGetItem()
对于(i=0;i对于我在代码中看到的内容,您只是在替换值,您需要首先从localStorage获取现有值,将新值附加到它,然后将结果分配到localStorage
<!DOCTYPE HTML>
<html>
<head>
<title>HTML5 localStorage (name/value item pairs) demo</title>
<style >
td, th {
font-family: monospace;
padding: 4px;
background-color: #ccc;
}
#hoge {
border: 1px dotted blue;
padding: 6px;
background-color: #ccc;
margin-right: 50%;
}
#items_table {
border: 1px dotted blue;
padding: 6px;
margin-top: 12px;
margin-right: 50%;
}
#items_table h2 {
font-size: 18px;
margin-top: 0px;
font-family: sans-serif;
}
label {
vertical-align: top;
}
</style>
</head>
<body onload="doShowAll()">
<h1>HTML5 localStorage (name/value item pairs) demo</h1>
<form name=editor>
<div id="hoge">
<p>
<label>Value: <textarea name=data cols=41 rows=10></textarea></label>
</p>
<p>
<label>Name: <input name=name></label>
<input type=button value="getItem()" onclick="doGetItem()">
<input type=button value="setItem()" onclick="doSetItem()">
<input type=button value="removeItem()" onclick="doRemoveItem()">
</p>
</div>
<div id="items_table">
<h2>Items</h2>
<table id=pairs></table>
<p>
<label><input type=button value="clear()" onclick="doClear()"> <i>* clear() removes all items</i></label>
</p>
</div>
<script>
function doSetItem() {
var name = document.forms.editor.name.value;
var data = document.forms.editor.data.value;
var origData = localStorage.getItem(name) || 0;
localStorage.setItem(name, parseInt(origData) + parseInt(data));
doShowAll();
}
function doGetItem() {
var name = document.forms.editor.name.value;
document.forms.editor.data.value = localStorage.getItem(name);
doShowAll();
}
function doRemoveItem() {
var name = document.forms.editor.name.value;
document.forms.editor.data.value = localStorage.removeItem(name);
doShowAll();
}
function doClear() {
localStorage.clear();
doShowAll();
}
function doShowAll() {
var key = "";
var pairs = "<tr><th>Name</th><th>Value</th></tr>\n";
var i=0;
for (i=0; i<=localStorage.length-1; i++) {
key = localStorage.key(i);
pairs += "<tr><td>"+key+"</td>\n<td>"+localStorage.getItem(key)+"</td></tr>\n";
}
if (pairs == "<tr><th>Name</th><th>Value</th></tr>\n") {
pairs += "<tr><td><i>empty</i></td>\n<td><i>empty</i></td></tr>\n";
}
document.getElementById('pairs').innerHTML = pairs;
}
</script>
</form>
</body>
</html>
要按降序显示它们,请执行以下操作:
function doSetItem() {
var name = document.forms.editor.name.value;
var data = document.forms.editor.data.value;
var origData = localStorage.getItem(name) || 0;
localStorage.setItem(name, parseInt(origData) + parseInt(data));
doShowAll();
}
函数doShowAll(){
var key=“”;
var pairs=“NameValue\n”;
var userArray=[];
对于(var i=0;i),您的问题不清楚。您能改写您的具体问题吗?嗨,Drazen Bjelovuk,实际上我想在本地存储名称和值。如果假设我输入您的名称和值2,它应该存储您的名称和值,如果假设我再次添加您的名称并添加值3,它应该添加值(2+3=5)并显示给你的名字..明白了吗?实际上我想在本地存储名字和值。如果我输入你的名字和值2,它应该存储你的名字和值,如果我再次添加你的名字和值3,它应该添加值(2+3=5)把它显示在你的名字上。明白了吗?谢谢你,德拉赞。有可能按照最高值获取数据吗。例如,德拉赞20,Ram 18。如果你加的值高于20,它应该排在第一位。但实际上现在我是按字母顺序或数字顺序获取的。所以请帮助我现在我无法回答这个问题,我还有5天。所以请他lp me out@Drazen Bjelovuk,不,其未显示值降序应为。它是如何显示的?@Drazen Bjelovuk,其随机显示格式不正确
function doShowAll() {
var key = "";
var pairs = "<tr><th>Name</th><th>Value</th></tr>\n";
var userArray = [];
for (var i = 0; i <= localStorage.length - 1; i++) {
key = localStorage.key(i);
userArray.push({name:key, value:parseInt(localStorage.getItem(key))});
}
userArray.sort(function(a, b){
return b.value - a.value;
});
userArray.forEach(function(user){
pairs += "<tr><td>" + user.name + "</td>\n<td>" + user.value + "</td></tr>\n";
});
if (pairs === "<tr><th>Name</th><th>Value</th></tr>\n") {
pairs += "<tr><td><i>empty</i></td>\n<td><i>empty</i></td></tr>\n";
}
document.getElementById('pairs').innerHTML = pairs;
}