Bitte lesen Sie auch meine Antwort auf diese Frage - Es gibt wirklich keinen Grund, $('#input-field-id')zweimal anrufen zu müssen ... Sehr einfache Antwort - +1
Gnarf
2
Ich denke, es sollte eine Funktion geben, die den Wert einer Eingabe erhöht, wie Sie es mit der können innerHTML.
Blue Sheep
109
Es gibt zwei Möglichkeiten. Aymans Ansatz ist der einfachste, aber ich würde ihm eine zusätzliche Anmerkung hinzufügen. Sie sollten die jQuery-Auswahl wirklich zwischenspeichern. Es gibt keinen Grund, $("#input-field-id")zweimal aufzurufen :
var input = $("#input-field-id");
input.val( input.val()+"more text");
Die andere Option .val()kann auch eine Funktion als Argument annehmen. Dies hat den Vorteil, dass Sie problemlos an mehreren Eingängen arbeiten können:
$("input").val(function( index, val ){return val +"more text";});
Ich kann einem Suchfeld keinen Platzhalter hinzufügen und möchte diesen verwenden und das Feld dann löschen, wenn der Benutzer den Cursor in das Suchfeld setzt. Ist das machbar?
// Define appendVal by extending JQuery
$.fn.appendVal =function(TextToAppend){return $(this).val(
$(this).val()+TextToAppend);};//_____________________________________________// And that's how to use it:
$('#SomeID').appendVal('This text was just added')
Nun, als ich dieses Beispiel erstellt habe, war ich irgendwie etwas verwirrt. " ValueText " vs> Current NodeText <Soll nicht .val()mit den Daten des value- Attributs ausgeführt werden? Wie auch immer, ich und du, ich können das früher oder später klären.
Der Punkt für den Moment ist jedoch:
Verwenden Sie beim Arbeiten mit Formulardaten .val () .
Im Umgang mit den meisten schreibgeschützten Daten zwischen den Tags arbeiten, verwenden Sie .text () oder .append () , um Text anzuhängen.
Fügt dies etwas Neues hinzu, um die Frage besser zu beantworten? Ich verstehe, dass Sie nur eine Erweiterung vornehmen, aber dies wurde schon seit einiger Zeit beantwortet. Ich möchte nur sicherstellen, dass die Qualität von SO erhalten bleibt.
Kevin Brown
1
Danke fürs Fürsorge - das gefällt mir. Aber ja, Sie haben Recht, es gibt nicht viel Neues, die Essenz bleibt gleich. Als ich jedoch die aktuellen Antworten verdaute, hatte ich das Gefühl, dass etwas an Stil und Implementierung getan werden könnte. Ich habe zuerst geprüft, ob ein Teil des Beitrags bearbeitet werden kann, aber am Ende dachte ich, es sei am besten, einen neuen zu erstellen. Also, was ist neu: * Sie können das Snipped ausführen. * Die Erweiterung hilft viel beim Schreiben von selbstdokumentierendem Code, ohne das Wesentliche abzulenken.
Nadu
0
<!DOCTYPE html><html><head><title></title><scriptsrc="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script><styletype="text/css">*{font-family: arial;font-size:15px;}</style></head><body><buttonid="more">More</button><br/><br/><div>
User Name : <inputtype="text"class="users"/><br/><br/></div><buttonid="btn_data">Send Data</button><scripttype="text/javascript">
jQuery(document).ready(function($){
$('#more').on('click',function(x){var textMore ="User Name : <input type='text' class='users'/><br/><br/>";
$("div").append(textMore);});
$('#btn_data').on('click',function(x){var users=$(".users");
$(users).each(function(i, e){
console.log($(e).val());});})});</script></body></html>
Antworten:
quelle
$('#input-field-id')
zweimal anrufen zu müssen ... Sehr einfache Antwort - +1innerHTML
.Es gibt zwei Möglichkeiten. Aymans Ansatz ist der einfachste, aber ich würde ihm eine zusätzliche Anmerkung hinzufügen. Sie sollten die jQuery-Auswahl wirklich zwischenspeichern. Es gibt keinen Grund,
$("#input-field-id")
zweimal aufzurufen :Die andere Option
.val()
kann auch eine Funktion als Argument annehmen. Dies hat den Vorteil, dass Sie problemlos an mehreren Eingängen arbeiten können:quelle
Wenn Sie das Anhängen mehrmals verwenden möchten, möchten Sie möglicherweise eine Funktion schreiben:
Nachdem Sie es einfach anrufen können:
quelle
Sie suchen wahrscheinlich nach val ()
quelle
Nun, als ich dieses Beispiel erstellt habe, war ich irgendwie etwas verwirrt. " ValueText " vs> Current NodeText <Soll nicht
.val()
mit den Daten des value- Attributs ausgeführt werden? Wie auch immer, ich und du, ich können das früher oder später klären.Der Punkt für den Moment ist jedoch:
Verwenden Sie beim Arbeiten mit Formulardaten .val () .
Im Umgang mit den meisten schreibgeschützten Daten zwischen den Tags arbeiten, verwenden Sie .text () oder .append () , um Text anzuhängen.
quelle
Ausgabe
quelle