Inner-HTML-input-Werte
habe eine kurze Frage zu innerHTML und input-Werte, die eingegeben wurden. Siehe das kurze Beispiel unten (mit Hilfe von jQuery für die Bequemlichkeit):
jQuery:
jQuery(document).ready(function($) {
$('.send').click(function() {
alert( $('.content').html() );
return false;
});
});
html:
<div class="content">
<input type="text" name="input" value="Old Value" />
<input type="button" class="send" value="Send" />
</div>
Wenn Sie Bearbeiten den input-Wert, klicken Sie dann auf die Schaltfläche "Senden", wird die Warnung zeigt, dass die innerHTML bekommen, enthält die Eingabe mit dem "Alten Wert", als vielmehr der Wert, den der Benutzer eingegeben hat. Warum ist das so? Und wie kann man das HTML als string mit Benutzer eingegebenen input-Werte?
InformationsquelleAutor Matthew Ruddy | 2012-08-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wird der neue Wert gespeichert ist, als eine Eigenschaft, kein Attribut, der Wert kann erhalten werden, indem
inputelement.value
, die änderung des Wertes wirkt sich nicht auf das Attribut. Wenn Sie möchten, dass die html mit dem neuen Wert nur setzen Sie das Attribut auf den neuen Wert.Für den check-Boxen und radio-buttons legen Sie die checked-Attribut legen Sie die innerHTML-für die Bereiche text, wählt die gewählte Attribut auf die option
http://jsfiddle.net/mowglisanu/F7urT/5/
siehe update
Danke. Sehr einfach, und wirklich haben sollte, erwischt es selbst. Sturheit führt mich zu verschwenden Zeit, um herauszufinden, was Los war mit InnerHTML, eher als die Umsetzung eine einfache Lösung. Nochmals vielen Dank. Glaubte, daß es tatsächlich hat die aktuelle HTML, einschließlich geänderte input-Werte, etc, anstatt Sie wörtlich Lesen der Quelle.
InformationsquelleAutor Musa
Bekommen Sie es nicht mit
.innerHTML
(.html()
). Schreiben in eine element nicht ändern Sie die html-markup, noch wird es ändern dievalue
- Attribut im eigentlichen markup.Können Sie nur Zugriff auf die aktuellen Inhalte von direkt bitten die element für seine
.value
- Wert. Mit jQuery, können Sie dies über.val()
zu.InformationsquelleAutor jAndy
diese Lösung ist besser. Werke für mehr Eingänge.
InformationsquelleAutor DanCZ
$('#input_id').attr('value',$('#input_id').val());
setzen Sie den Wert in das html -
InformationsquelleAutor orhanhenrik