Also habe ich diese Kontrollkästchen:
<input type="checkbox" name="type" value="4" />
<input type="checkbox" name="type" value="3" />
<input type="checkbox" name="type" value="1" />
<input type="checkbox" name="type" value="5" />
Und so weiter. Es gibt ungefähr 6 von ihnen und sie sind handcodiert (dh nicht von einer Datenbank abgerufen), so dass sie wahrscheinlich für eine Weile gleich bleiben.
Meine Frage ist, wie ich sie alle in einem Array (in Javascript) erhalten kann, damit ich sie verwenden kann, während ich $.post
mit Jquery eine AJAX- Anfrage stelle.
Irgendwelche Gedanken?
Bearbeiten: Ich möchte nur, dass die ausgewählten Kontrollkästchen zum Array hinzugefügt werden
javascript
jquery
ajax
dhtml
Klicken Sie auf Upvote
quelle
quelle
Antworten:
Formatiert:
Hoffentlich wird es funktionieren.
quelle
yourArray = []
map
statteach
:var yourArray = $("input:checkbox[name=type]:checked").map(function(){return $(this).val()}).get()
function get_selected_checkboxes_array(){ var ch_list=Array(); $("input:checkbox[type=checkbox]:checked").each(function(){ch_list.push($(this).val());}); return ch_list; }
quelle
Pure JS
Für diejenigen, die jQuery nicht verwenden möchten
quelle
Ich habe es nicht getestet, aber es sollte funktionieren
quelle
Dies sollte den Trick tun:
Ich glaube nicht, dass Sie andere Elemente haben, die überprüft werden können, aber wenn Sie dies tun, müssten Sie es genauer machen:
quelle
In MooTools 1.3 (spätestens zum Zeitpunkt des Schreibens):
quelle
Wenn Sie ein Vanille-JS verwenden möchten, können Sie dies ähnlich wie bei einem @ zahid-ullah tun, wobei Sie jedoch eine Schleife vermeiden:
Der gleiche Code in ES6 sieht viel besser aus:
Code-Snippet anzeigen
quelle
In Javascript wäre es so (Demo Link) :
quelle
ES6-Version:
Code-Snippet anzeigen
quelle
Reines JavaScript ohne temporäre Variablen:
quelle
quelle
Beim Aktivieren den Wert für das Kontrollkästchen hinzufügen und beim Deaktivieren den Wert subtrahieren
quelle
Eine andere Möglichkeit, dies mit Vanilla JS in modernen Browsern zu tun (keine IE-Unterstützung und leider keine iOS Safari-Unterstützung zum Zeitpunkt des Schreibens), ist FormData.getAll () :
quelle
Verwenden von Jquery
Sie müssen nur Klasse zu jeder Eingabe hinzufügen, ich habe Klasse "Quelle" hinzugefügt, Sie können es natürlich ändern
quelle
Benutze das:
quelle
Verwenden Sie den kommentierten if-Block, um das Hinzufügen von Werten zu verhindern, die sich bereits im Array befinden, wenn Sie auf die Schaltfläche klicken oder etwas, um die Einfügung auszuführen
quelle
Sie könnten so etwas versuchen:
Hier
quelle
Hier ist mein Code für das gleiche Problem, das auch jemand ausprobieren kann. jquery
quelle
quelle
quelle