为什么当我将隐藏输入的值设置为对象数组的值时,它会使隐藏输入数组中的每个项目都变成 [object Object]
Why when I set the value of an hidden input to a value of an array of objects it makes every item in the hidden input array into [object Object]
我有这个代码:
for(let i =0; i < upbtn.length; i++){
upbtn[i].addEventListener('click', function(){
let whichTopic = i
if(whichTopic == 0){
return true
}
else{
let arr = coursenewtopics.value
arr = JSON.parse(arr)
arraymove(arr, i, i-1)
coursenewtopics.value = arr
console.log(arr)
console.log(coursenewtopics.value)
//changeordertopicsform.submit()
}
})
}
我正在尝试从隐藏输入中对数组进行排序,然后将隐藏输入的值设置为排序数组,我控制台记录了排序数组的结果(arr)
[
{
"type": "text",
"name": "",
"text": ""
},
{
"type": "text",
"name": "2",
"text": ""
},
{
"type": "text",
"name": "1",
"text": ""
},
{
"type": "text",
"name": "3",
"text": ""
},
{
"type": "text",
"name": "4",
"text": ""
}
]
结果是我想要的,但是当我输入这个值后我只是将 arr 记录到隐藏输入,然后控制台记录隐藏输入的值变为:
[object Object],[object Object],[object Object],[object Object],[object Object]
为什么JavaScript会这样?我该如何解决这个问题并将值放入隐藏输入而不使它们成为 [object Object]?稍后我需要它们作为表格。
谢谢!
所以你的问题是'How to display an array of object literally'。
你可以试试JSON.stringify(arr, null, ' ')
我有这个代码:
for(let i =0; i < upbtn.length; i++){
upbtn[i].addEventListener('click', function(){
let whichTopic = i
if(whichTopic == 0){
return true
}
else{
let arr = coursenewtopics.value
arr = JSON.parse(arr)
arraymove(arr, i, i-1)
coursenewtopics.value = arr
console.log(arr)
console.log(coursenewtopics.value)
//changeordertopicsform.submit()
}
})
}
我正在尝试从隐藏输入中对数组进行排序,然后将隐藏输入的值设置为排序数组,我控制台记录了排序数组的结果(arr)
[
{
"type": "text",
"name": "",
"text": ""
},
{
"type": "text",
"name": "2",
"text": ""
},
{
"type": "text",
"name": "1",
"text": ""
},
{
"type": "text",
"name": "3",
"text": ""
},
{
"type": "text",
"name": "4",
"text": ""
}
]
结果是我想要的,但是当我输入这个值后我只是将 arr 记录到隐藏输入,然后控制台记录隐藏输入的值变为:
[object Object],[object Object],[object Object],[object Object],[object Object]
为什么JavaScript会这样?我该如何解决这个问题并将值放入隐藏输入而不使它们成为 [object Object]?稍后我需要它们作为表格。
谢谢!
所以你的问题是'How to display an array of object literally'。
你可以试试JSON.stringify(arr, null, ' ')