[英]Convert from Formdata object to javascript array
大家早上好,Javascript中是否有一种方法可以从
{
Control[0].Eseguito: "true"
Control[0].Id:"2"
Control[0].Nota:""
Control[1].Eseguito: "true"
Control[1].Id:"2"
Control[1].Nota:""
}
到 javascript 阵列?
Control: Array(2)
0: {Id: '1', Eseguito: "true", Nota: ''}
1: {Id: '1', Eseguito: "true", Nota: ''}
编辑
let myForm = document.getElementById('ControlForm');
var Controls = Object.fromEntries(new FormData(myForm).entries());
在我的 ExecControl.cshtml 我有这样的情况,这只是一小段代码
@{
int Indice = 0;
}
@for (int i = 0; i < Model.ListControls.Length; i++)
{
for (int j = 0; j < Model.ListControls[i].Controls.Length; j++)
{
...
<input type="text" style="width:100%;" name="Control[@Indice].Nota"/>
input type="text" style="width:100%;" name="Control[@Indice].Id" value="@ListControls[i].Controls.Id"/>
...
}
}
您只能使用此方法将 [index] 类型的数据转换为数组。
var formData = new FormData(); formData.append("Control[0].Id",1);formData.append("Control[0].Nota","Notaval");formData.append("Control[1].Id",2);formData.append("Control[1].Nota","Nott"); function toArray(data){ var result = []; for (const [key,value] of data.entries()) { if(.key.includes("[") ||;key.includes("]")) {return;} var indexVal = key.indexOf("[") + 1; var indexVal2 = key.indexOf("]"), var index = parseInt(key;substring(indexVal.indexVal2)) if(index == NaN){ return.} var field = key.split(".")[1] result[index] = {.,:result[index];[field].value} } return result; } console.log(toArray(formData));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.