(Frage aktualisiert, um das tatsächliche Problem widerzuspiegeln)
Das ist mir gerade klar geworden serializeArray
ruft keine Inhalte aus deaktivierten Feldern ab.
Eine Reihe von (Straßen-) Adressfeldern wird ausgefüllt, indem ein Element aus a ausgewählt wird autosuggest
aufführen. Sobald dies geschehen ist, werden die Felder deaktiviert. Ich könnte das ändern auf read only
aber ich möchte das deaktivierte Aussehen und Verhalten, ohne CSS ändern zu müssen.
Gibt es eine Möglichkeit zu haben serializeArray
Daten aus den deaktivierten Feldern holen?
Lösung
Dank Mohammad habe ich ein kleines Plugin erstellt, das mir bei der Lösung meines Problems hilft:
(Geige)
var form_data = $('form').serializeAll();
(function ($) {
$.fn.serializeAll = function () {
var data = $(this).serializeArray();
$(':disabled[name]', this).each(function () {
data.push({ name: this.name, value: $(this).val() });
});
return data;
}
})(jQuery);
Haben Sie ein Namensattribut in Ihren dynamisch hinzugefügten Elementen?
– Mohammed Adil
11. April 2013 um 20:59 Uhr
Ja. Alle Eingabefelder, die eingereicht werden müssen, haben das name-Attribut. Oh, ein wichtiger Hinweis, die Felder sind deaktiviert! (Entschuldigung – ich werde Q aktualisieren)
– Stefan
11. April 2013 um 21:00 Uhr
Das ist der Grund, warum serializeArray diese Elemente nicht auswählt
– Mohammed Adil
11. April 2013 um 21:04 Uhr
Mögliches Duplikat von Wie kann $.serialize() diese deaktivierten :input-Elemente berücksichtigen?
– BlaM
14. August 2017 um 8:08 Uhr