gpt4 book ai didi

javascript - 如何在对象数组中动态添加 id 属性?

转载 作者:行者123 更新时间:2023-12-02 23:06:41 25 4
gpt4 key购买 nike

我有一个简单的部分,用户可以在其中使用表单添加电影详细信息。我正在获取用户输入的值并从中创建一个对象,然后将其插入数组中。不过,我还想为每个添加的电影添加一个动态 ID。

$("#btnAddMovie").click(function(e) {
console.log('btn-movie triggered');

var jsonData = [];
var formData = $("#movieForm").serializeArray();

$.each(formData, function() {
console.log(formData);
jsonData.push({
title: formData[0].value,
movieurl: formData[1].value,
movieid: '1'
});
});

console.log(jsonData);

var params = JSON.stringify({
movies: jsonData
});

$.ajax({
type: 'POST',
data: {
params: params
},
url: 'save_to_json.php',
success: function(data) {
$('#msg').html(data).fadeIn('slow');
$('#msg').delay(2000).fadeOut('slow');
},
error: function() {
$('#error-msg').html(data).fadeIn('slow');
$('#error-msg').delay(2000).fadeOut('slow');
}
});
});

上面的解决方案给了我这个

{
"movies": [{
"title": "fdfdfd",
"movieurl": "http:\/\/meed.audiencevideo.com\/videos",
"movieid": "1"
}, {
"title": "fdfdfd",
"movieurl": "http:\/\/meed.audiencevideo.com\/videos",
"movieid": "1"
}]
}

我希望 movieid 动态递增,例如 movieid: 1movieid: 2 等。我需要做什么才能得到我想要的想要吗?

最佳答案

在您的代码中,您可以在 $.each 的回调中使用索引

....
$.each(formData, function(index) {
console.log(formData);
jsonData.push({
title: formData[0].value,
movieurl: formData[1].value,
movieid: index + 1
});
});
...

要了解回调,请参阅 jquery 文档 https://api.jquery.com/jQuery.each/

<小时/>

或者,您也可以使用jsonData.length

....
$.each(formData, function(index) {
console.log(formData);
jsonData.push({
title: formData[0].value,
movieurl: formData[1].value,
movieid: jsonData.length + 1
});
});
...

关于javascript - 如何在对象数组中动态添加 id 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57558736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com