Beim Hinzufügen eines Arrays zu einem Json-Objekt aus zwei separaten Auswahllisten erhalte ich ein Array von Arrays anstelle von einem Array mit allen Werten . Ich werde erklären, weiter unten:Array zu Json hinzufügen Object gibt ein Array von Arrays anstelle von einem Array von Werten aus (mit Jquery)
ich meine erwartete Ausgabe, wenn ich zwei Elemente aus einer Auswahlliste ausgewählt haben. Wenn das der Fall ist, läuft dieser Code:
var jsonObject = {};
jsonObject["someKey"] = $("#selectList1").val();
console.log(jsonObject);
Konsole:
▼ Object {someKey: Array[2]}
▼ someKey: Array[2]
0: "value1"
1: "value2"
length: 2
► __proto__:Array[0]
► __proto__: Object
So ist die oben richtig ist. Aber wenn ich ein Artikel von zwei getrennte Listen wählen jeweils dieser Code ausgeführt wird:
var jsonObject = {};
jsonObject["keys"] = new Array($("#selectList1").val(), $("#selectList2").val());
console.log(jsonObject);
Konsole:
▼ Object {someKey: Array[2]}
▼ someKey: Array[2]
▼ 0: Array[1]
0: "value1"
length: 1
►__proto__: Array[0]
▼ 1: Array[1]
0: "value2"
length: 1
►__proto__: Array[0]
length: 2
► __proto__:Array[0]
► __proto__: Object
Die oben ist nicht meine gewünschte Ausgabe. Ich habe auch diesen Code ausgeführt, der den gleichen unerwünschten Ausgang ausgibt:
var keys = [];
keys.push($("#selectList1").val());
keys.push($("#selectList2").val());
jsonObject["keys"] = keys;
Jede Hilfe geschätzt, danke.
'neues Array ($ (" # selectList1 "). Val() [0], $ (" # selectList2 "). Val() [0])' – depperm
Werfen Sie einen Blick auf ['Array.concat() '] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/concat) – strah
Warum verwenden Sie Mehrfachauswahl, wenn Sie nur ein Element aus der Liste auswählen möchten ? – Barmar