Перебор объекта JSON для добавления значений в FormData в jquery - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть объект JSON в jquery, подобный этому: -

userObj =
{ 
 "loginId":"abc123", 
 "class":"5", 
 "email":"akhil.gts1997@gmail.com", 
 "level":"1"
}

Я должен отправить запрос POST на сервер с multipart / form-data.Я создал объект FormData: -

var fd = new FormData(); 

Что мне нужно сделать, это перебрать каждый элемент в JSON и добавить их в мою переменную fd.Вот что я хочу: -

fd.append('loginId','abc123');
fd.append('class',5);
fd.append('email','akhil.gts1997@gmail.com');

Есть идеи, как этого добиться?

Ответы [ 5 ]

0 голосов
/ 18 февраля 2019

var userObj =
{ 
 "loginId":"abc123", 
 "class":"5", 
 "email":"akhil.gts1997@gmail.com", 
 "level":"1"
}
var fd = new FormData(); 
$.each(userObj, function(i, val) {
  console.log(i + " " + val);
  fd.append(i, val);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>

Try something like this.
0 голосов
/ 18 февраля 2019
var userObj = {
    "loginId": "abc123",
    "class": "5",
    "email": "akhil.gts1997@gmail.com",
    "level": "1"
};
var keys = Object.keys(userObj);
var values = Object.values(userObj);
var fd = new FormData();
for (var i = 0; i < keys.length; i++) {
    fd.append(keys[i], values[i]);
}
0 голосов
/ 18 февраля 2019

Вы можете сделать это так:

let userObj = { 
 "loginId":"abc123", 
 "class":"5", 
 "email":"akhil.gts1997@gmail.com", 
 "level":"1"
};

let fd = new FormData();

for (let key in userObj){
    fd.append(key, userObj[key])
}
0 голосов
/ 18 февраля 2019

let userObj = { 
 "loginId":"abc123", 
 "class":"5", 
 "email":"akhil.gts1997@gmail.com", 
 "level":"1"
};

var newdata= new FormData();

 $.each(userObj, function (key, value) {
    newdata.append(key, userObj[key]);
    console.log(key, userObj[key])
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
0 голосов
/ 18 февраля 2019

Вы можете повторить объект, используя for

for (var key in userObj) {
  fd.append(key, userObj[key]);
}

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...