gpt4 book ai didi

javascript - 如何将文件对象添加到JavaScript对象中?

转载 作者:行者123 更新时间:2023-11-28 15:16:50 25 4
gpt4 key购买 nike

如何将对象添加到现有的 javascript 对象中?这是现有 javascript 对象的示例

   var dataObj = {
TITLE : adtitle,
DESC : addesc,
PRICE : price,
DISCOUNT : discount,
CATID : maincatid,
STATUS : adstatus,
QUANTITY : quantity
};

现在我有了这个文件对象,我想将其添加到上面的该对象中。

File { name: "paper.jpg", lastModified: 1445433597723, lastModifiedDate: Date 2015-10-21T13:19:57.723Z, size: 54900, type: "image/jpeg" }

此文件对象是文件上传输入类型的值

var image1 = $('#Image1').prop("files")[0];
var image2 = $('#Image2').prop("files")[0];

然后我还需要触发一个$.post

   $.post("<?php echo Yii::app()->createUrl('/post'); ?>", { jsonData: postdata}, function(response){
console.log(response);
});

当我点击按钮时,上面的所有脚本都会被触发

   $('#postit').click(function(e){
//all the scripts from above
});

最佳答案

要将其添加到现有对象中,您只需在 dataObj 上定义一个新属性即可:

var dataObj = {
...
};
// other work
dataObj.FILE = $('#Image1').prop("files")[0];

或者,如果您可以在定义 dataObj 时执行此操作,则应该这样做:

var dataObj = {
TITLE : adtitle,
DESC : addesc,
PRICE : price,
DISCOUNT : discount,
CATID : maincatid,
STATUS : adstatus,
QUANTITY : quantity,
FILE : $('#Image1').prop("files")[0]
};

如果您有多个 File 对象,那么您应该将它们作为数组存储在 dataObj 中:

dataObj.FILES = $('#Image1').prop("files");

或者您可能一次只处理一个,并且需要将它们逐一推送到 dataObj 上的数组中:

var dataObj = {
TITLE : adtitle,
DESC : addesc,
PRICE : price,
DISCOUNT : discount,
CATID : maincatid,
STATUS : adstatus,
QUANTITY : quantity,
FILES : []
};

// Populate the array
$('#Image1').prop("files").forEach(function(file) {
dataObj.FILES.push(file);
});

关于javascript - 如何将文件对象添加到JavaScript对象中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33503899/

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