json в цикле
Ребят, я нуб! Подскажите нубу, почему не работает!
function send() { var ARTKL01 = '1'; var ARTKL02 = ''; var ARTKL03 = ''; var ARTKL04 = ''; var ARTKL05 = ''; var JSON = { "pole1": textfield1, "pole2": textfield2, "pole3": textfield3, "pole4": textfield4, "pole5": textfield5, "pole6": textfield6, "pole7": textfield7, "pole8": textfield8, "zakaz": [ { "artikul":ARTKL01, "kolichestvo":kolichestvo01, }, { "artikul":ARTKL02, "kolichestvo":kolichestvo02, }, { "artikul":ARTKL03, "kolichestvo":kolichestvo03, }, { "artikul":ARTKL04, "kolichestvo":kolichestvo04, }, { "artikul":ARTKL05, "kolichestvo":kolichestvo05 } ] } for (i in JSON.zakaz) { if (JSON.zakaz[i].artikul != '') { output+="<li>" + JSON.zakaz[i].artikul + "" + JSON.zakaz[i].kolichestvo + "</li>"; alert (output); } } |
Цитата:
|
Это inputы:
textfield1 = document.getElementById('textfield1').value; textfield2 = document.getElementById('textfield2').value; textfield3 = document.getElementById('textfield3').value; textfield4 = document.getElementById('textfield4').value; textfield5 = document.getElementById('textfield5').value; textfield6 = document.getElementById('textfield6').value; textfield7 = document.getElementById('textfield7').value; textfield8 = document.getElementById('textfield8').value; |
K_PECT,
тогда это нужно добавить в скрипт |
вот для наглядности
|
K_PECT,
function send() { var ARTKL01 = '1'; var ARTKL02 = ''; var ARTKL03 = ''; var ARTKL04 = ''; var ARTKL05 = ''; var kolichestvo01 = '1'; var kolichestvo02 = ''; var kolichestvo03 = ''; var kolichestvo04 = ''; var kolichestvo05 = ''; var textfield1 = '1'; var textfield2 = ''; var textfield3 = ''; var textfield4 = ''; var textfield5 = ''; var JSON = { "pole1": textfield1, "pole2": textfield2, "pole3": textfield3, "pole4": textfield4, "pole5": textfield5, "zakaz": [ { "artikul":ARTKL01, "kolichestvo":kolichestvo01, }, { "artikul":ARTKL02, "kolichestvo":kolichestvo02, }, { "artikul":ARTKL03, "kolichestvo":kolichestvo03, }, { "artikul":ARTKL04, "kolichestvo":kolichestvo04, }, { "artikul":ARTKL05, "kolichestvo":kolichestvo05 } ] } var output = ''; for (i in JSON.zakaz) { if (JSON.zakaz[i].artikul != '') { output+="<li>" + JSON.zakaz[i].artikul + "" + JSON.zakaz[i].kolichestvo + "</li>"; alert (output); } }} send() |
рони, спасибо вам! Выручили! С новым годом! Всего вам!
|
Подскажите, пожалуйста, как после этого цикла создать строку JSON.stringify(JSON);
Задача исключить пустые переменные. |
K_PECT,
придумывайте переменным оригинальные имена ... да и в целом алгоритм стоит ещё раз продумать ... <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> </head> <body> <script> function send() { var ARTKL01 = '1'; var ARTKL02 = ''; var ARTKL03 = ''; var ARTKL04 = ''; var ARTKL05 = ''; var kolichestvo01 = '1'; var kolichestvo02 = ''; var kolichestvo03 = ''; var kolichestvo04 = ''; var kolichestvo05 = ''; var textfield1 = '1'; var textfield2 = ''; var textfield3 = ''; var textfield4 = ''; var textfield5 = ''; var data = { "pole1": textfield1, "pole2": textfield2, "pole3": textfield3, "pole4": textfield4, "pole5": textfield5, "zakaz": [ { "artikul":ARTKL01, "kolichestvo":kolichestvo01, }, { "artikul":ARTKL02, "kolichestvo":kolichestvo02, }, { "artikul":ARTKL03, "kolichestvo":kolichestvo03, }, { "artikul":ARTKL04, "kolichestvo":kolichestvo04, }, { "artikul":ARTKL05, "kolichestvo":kolichestvo05 } ] } var output = ''; for (i in data.zakaz) { if (data.zakaz[i].artikul != '') { output+="<li>" + data.zakaz[i].artikul + "" + data.zakaz[i].kolichestvo + "</li>"; alert (output); } } var obj = {}; Object.keys(data).forEach(function (key) { if(key == 'zakaz'){ var arr = data[key].filter(function(el) { return el.artikul && el.kolichestvo }); if(arr.length) obj[key] = arr } else { data[key] && (obj[key] = data[key]) } }); alert(JSON.stringify(obj)) } send() </script> </body> </html> |
рони,
var obj = {}; Object.keys(data).forEach(function (key) { if(key == 'zakaz'){ var arr = data[key].filter(function(el) { return el.artikul && el.kolichestvo }); if(arr.length) obj[key] = arr } else { data[key] && (obj[key] = data[key]) } }); Сам бы такое никогда не написал)) Спасибо вам огромнейшее! Вы очень помогаете! |
Часовой пояс GMT +3, время: 22:47. |