【发布时间】:2018-11-08 23:59:21
【问题描述】:
我想创建一个如下所示的可排序 javascript 对象:
myArray = [
{name: "Jones, James", ef: "35", mem: "2018.12.10"},
{name: "Smith, Paul", ef: "35", mem: "2018.09.12"},
{name: "Washington, George", ef: "35", mem: "2018.08.16"}
];
我还计划按名称对 myArray() 进行排序。
myArray.sort(function(a, b){
return a.name - b.name;
});
JAVASCRIPT:
function store() {
var myArray = [];
var i;
for (i = 0; i < 10; i++) {
NAME = document.getElementById('P' + i).value;
EF = document.getElementById('E' + i).value;
MEM = document.getElementById('M' + i).value;
// This code doesn't seem to add records to myArray()
myArray.push({
name: 'NAME',
ef: 'EF',
mem: 'MEM'
});
}
console.log(myArray.length);
}
store();
我对 myArray 进行了排序:
0: {name: "Abercrombie, Bill", rank: "1537", uscf: "9999", ef: "3", exp: "2019.01.12", …}
1: {name: "Baken, Clif", rank: "1802", uscf: "9999", ef: "3", exp: "2019.09.18", …}
2: {name: "Kukla, Ollie", rank: "2014", uscf: "0920", ef: "", exp: "2019.08.12", …}
3: {name: "Lincoln, Abraham", rank: "2023", uscf: "0119", ef: "", exp: "2019.09.06", …}
4: {name: "Washington, George", rank: "1563", uscf: "9999", ef: "3", exp: "2019.01.16", …}
如何遍历排序的 myArray() 以填充表单?我想我需要这样的东西:
console.log(myArray.length);
for (i = 1; i <= myArray.length; i++) {
// where id "P1" is the name input field in the form which we are populating
document.getElementById("P" +i).value = myArray[name];
}
【问题讨论】:
-
到目前为止你尝试过什么?请将其包含在 OP 中
-
我是 localStorage 的新手,我不知道自己在做什么。我需要帮助。我可以做一些事情,但这非常先进。古拉迪奥,我真的很头疼。
-
您可以使用 JSON.stringify() 设置和 JSON.parse() 在 get 中将数组或单个对象存储在一个 localStorage 键中。然后遍历该数组/对象并在循环中设置值,只需要很少的代码
-
我认为:localStorage.setItem('SP4', JSON.stringify(document.getElementById("P4").value))); (是正确的)。但是如何使用 JSON.stringify 将本地存储放入可排序的数组中?
-
您要排序的具体内容是什么?您提到 "P1-P48" 但这与什么有关?是
<input>元素中的值还是它们的id属性。这很令人困惑,因为您的 ID 是P4、E4和X4,考虑到 "P1-P48",这真的没有意义
标签: javascript jquery