Ich habe dieses Formular und ich versuche, den Wert aus dem Textbereich zu erhalten. aus irgendeinem Grund will es nicht.
<form action="/profile/index/sendmessage" method="post" enctype="application/x-www-form-urlencoded">
<div class="upload_form">
<dt id="message-label"><label class="optional" for="message">Enter Message</label></dt>
<dd id="message-element">
<textarea cols="60" rows="5" id="message" name="message"></textarea></dd>
<dt id="id-label"> </dt>
<dd id="id-element">
<input type="hidden" id="id" value="145198" name="id"></dd>
<dt id="send_message-label"> </dt>
<dd id="send_message-element">
<input type="submit" class="sendamessage" value="Send" id="send_message" name="send_message"></dd>
</div>
</form>
$("input.sendamessage").click(function(event) {
event.preventDefault();
var message = $('textarea#message').html();
var id = $('input#id').val();
console.log(message + '-' + id);
});
oder jsfiddle
irgendwelche Ideen?
javascript
jquery
textarea
Patriotische Kuh
quelle
quelle
<textarea>
Unterstützt dasvalue
Attribut nicht."Sie müssen nicht verwenden
textarea#message
var message = $('textarea#message').val();
Sie können direkt verwenden
var message = $('#message').val();
quelle
Sie sollten überprüfen, ob der Textbereich null ist, bevor Sie val () verwenden. Andernfalls wird ein undefinierter Fehler angezeigt.
if ($('textarea#message') != undefined) { var message = $('textarea#message').val(); }
Dann können Sie mit der Nachricht alles machen.
quelle
$('textarea#message')
kann nicht undefiniert sein (wenn$
Sie damit jQuery meinen).$('textarea#message')
kann von Länge 0 sein und$('textarea#message').val()
wäre dann leer, das ist allesquelle
Sie können direkt verwenden
var message = $.trim($("#message").val());
Lesen Sie mehr @ Ermitteln Sie den Wert von TextArea mithilfe der jQuery Val () -Methode
quelle
Sie können den Wert auch über das Namensattribut des Elements abrufen .
var message = $("#formId textarea[name=message]").val();
quelle
Sie müssen nicht verwenden
.html()
. Du solltest mitgehen.val()
.Aus dem Dokument von
.val()
:var message = $('#message').val();
quelle
Alle Werte werden immer mit genommen
.val()
.siehe den folgenden Code:
var message = $('#message').val();
quelle
Sie können den Wert auch anhand des Namens anstelle der folgenden ID abrufen:
var message = $('textarea:input[name=message]').val();
quelle