如何在Angular Typescript中将数组作为表单数据发布

问题描述 投票:0回答:1

我正在Angular 8中工作,并且正在.net core 2.2中使用web.api

我有一个包含一些“常规”输入,一个文件和多个可选复选框的表单。

问题是多个可选复选框,我将其变成数字数组。在将数据发布到服务器之前,我将FormGroup转换为FormData并手动添加了文件,还从多选复选框中添加了整数数组:

data.append('locationsSecondaryIds',
    new Blob( [ JSON.stringify(this.profilePersonalData.locationsSecondaryIds)], { type : 'application/json' } ) );
    if (this.file) {
        data.append('document', this.file, this.file.name);
    }

locationsSecondaryIds是一个数字[]。

我也尝试过忽略Blob并将其作为[1,1]发送,但是当服务器到达服务器时,它无法将其转换为列表

有什么好的建议吗?

非常感谢:-)

arrays angular typescript http-post asp.net-core-webapi
1个回答
0
投票

您可以尝试选择多个复选框值并将其附加到表单数据中。在提交按钮上:

let subs = [];
subs = this.skillForm.value.subjects; // here subject refers to multi select dropdown
let subString = subs.toString(); // you can let the values to be int as per your DB 
//column
let fd = new FormData();
fd.append('values',subString);
© www.soinside.com 2019 - 2024. All rights reserved.