Ich habe ein Array von Select-Tags.
<select id='uniqueID' name="status">
<option value="1">Present</option>
<option value="2">Absent</option>
</select>
und ich möchte ein JSON-Objekt mit zwei Feldern 'uniqueIDofSelect und optionValue' in JavaScript erstellen.
Ich benutze getElementsByName ("status") und iteriere darauf.
BEARBEITEN
Ich muss gerne raus
[{"selectID":2,"OptionValue":"2"},
{"selectID":4,"optionvalue":"1"}]
und so weiter...
javascript
json
Vikas
quelle
quelle
Antworten:
Soweit ich Ihre Anfrage verstehe, sollte dies funktionieren:
quelle
var jsonArr = [];
erstellt ein neues Array.var jsonObj = {};
erstellt ein neues ObjektjsonArr = []
undjsonObj = {}
in diesem Beitrag). Ich habe, vielleicht zu oft und vielleicht sogar fälschlicherweise, auf ein Objekt verwiesen, das ein Array von Objekten enthält, die jeweils (möglicherweise unterschiedliche) Name / Wert-Paare als "JSON-Objekt" enthalten. Da.json
ich mit der einfachen JSON-Syntax vertraut bin (wie Sie sie in einer tatsächlichen Datei haben würden), weiß ich, dass dies syntaktisch anders ist. Würden Sie das Array von Objekten auch als JSON bezeichnen?quelle
Wenn Sie ein einzelnes JavaScript-Objekt wie das folgende möchten:
(wobei Option 2, "Abwesend", die aktuelle Auswahl ist), sollte der folgende Code sie erzeugen:
Wenn Sie ein Array all dieser Objekte (nicht nur das ausgewählte) möchten , verwenden Sie Michaels Code , tauschen Sie ihn jedoch
status.options[i].text
gegen ausstatus.id
.Wenn Sie eine Zeichenfolge wünschen , die eine JSON-Darstellung des ausgewählten Objekts enthält, verwenden Sie stattdessen Folgendes:
quelle
Wenn ich ein JavaScript-Objekt aus einer Zeichenfolge erstellen möchte, die von der for-Schleife generiert wurde, würde ich den Ansatz von JSON zu Object verwenden. Ich würde eine JSON-Zeichenfolge durch Iteration der for-Schleife generieren und dann ein beliebiges gängiges JavaScript-Framework verwenden, um JSON als Objekt auszuwerten.
Ich habe Prototype JavaScript Framework verwendet . Ich habe zwei Arrays mit Schlüsseln und Werten. Ich iteriere durch die for-Schleife und generiere eine gültige JSON-Zeichenfolge. Ich verwende die Funktion evalJSON () , um eine JSON-Zeichenfolge in ein JavaScript-Objekt zu konvertieren.
Hier ist Beispielcode. Probieren Sie es auf Ihrer FireBug-Konsole aus
quelle
Ihre Frage ist ziemlich schwer zu entschlüsseln, aber ich werde versuchen, sie zu versuchen.
Du sagst:
Und dann sagst du:
Nun, diese Beispielausgabe hat nicht das Feld mit dem Namen
uniqueIDofSelect
, sondern nuroptionValue
.Wie auch immer, Sie fragen nach einer Reihe von Objekten ...
Dann sagst du im Kommentar zu michaels Antwort:
Sie möchten also keine Reihe von Objekten?
Was willst du dann?
Bitte entscheiden Sie sich.
quelle