2013-03-21 5 views
6

Ich habe ein Kommentarfeld (TextArea) in einem Dialogfeld. Wenn der Kommentar erfolgreich gespeichert wurde, möchte ich den Inhalt des Textfelds löschen und das Dialogfeld schließen. ATM das Dialogfeld wird geschlossen, aber ich muss seinen Inhalt löschen.Leeren Sie den Inhalt einer TextArea nach dem Senden

<textarea id="CommentBox" type="text" runat="server" rows="7" 
maxlength="2000" /> 

if (CommentSuccessfullyUpdated == "TRUE") 
{ 
//empty the comment box?? 
//something like 
$("#CommentBox").empty(); 

//closes the dialog box 
$("#dialog").dialog('close'); 

Vielen Dank für alle Antworten


Edit: Vielen Dank für die Hilfe Jungs. Es läuft durch den Code, aber es funktioniert nicht. Ich denke, es hat mit zu tun, um die richtigen vales zu holen und ein abwart Problem zu beheben ich musste:

function SubmitButton() { 
      var commentBoxData = $('#<%=CommentBox.ClientID%>').val(); 
      } 

wenn sie mit einem Haltepunkt zurückkehrt durchlaufen:

function SubmitButton() { 
      var commentBoxData = $('#ctl00_ContentPlaceHolder1_CommentBox').val(); 
} 

UND:

<textarea name="ctl00$ContentPlaceHolder1$CommentBox" id="ctl00_ContentPlaceHolder1_CommentBox" type="text" rows="7" maxlength="2000"> </textarea> 

Also ich rate nicht im gleichen Textarea, wenn ich versuche, es zu leeren. versuchte auch

$("#CommentBox.ClientID").val(''); 

aber keine Freude .... ay Ideen?

Antwort

8
$('#CommentBox').val(''); 

Verwenden Sie die val() Methode, übergeben Sie eine leere Zeichenfolge.

Dokumentation: http://api.jquery.com/val

Auch Ihr Aufschlag ist falsch. textarea ist kein selbstschließendes Element. Sie benötigen ein </textarea> Tag. Und die type="text" nicht notwendig ist (wahrscheinlich nicht tatsächlich gültig entweder)

Wie pro Ihre bearbeiten, können Sie entweder die IDs festgelegt an der Spitze Ihrer ASPX-Datei statisch zu sein (ich glaube, es ist ClientID="static")

oder Sie können einen anderen Selektor:

$('textarea').filter('[id*=CommentBox]').val(''); 
+0

Hallo Danke für die Antwort bitte meine bearbeiten – Mick

+0

@Mick sehen - Aktualisiert meine Antwort auf Ihre bearbeiten basiert. – ahren

+0

Guter Job, der verschiedene Auswahl funktionierte. Danke für die Hilfe – Mick

4

können Sie verwenden val:

$("#CommentBox").val(''); 

http://api.jquery.com/val/

JSFiddle

http://jsfiddle.net/KhPM6/1/

bearbeiten:

Sie nicht verweisen auf die ASP.NET erzeugten Textbereich richtig. Wie Sie in Ihrer Frage gezeigt haben, müssen Sie es verweisen, wie:

$('#<%=CommentBox.ClientID%>').val(''); 
+0

Hallo vielen Dank für die Antwort siehe meine Bearbeitung – Mick

+0

@Mick - aktualisiert meine Antwort. –

+0

Gute Arbeit. Danke für die Hilfe – Mick

2
$('textarea#CommentBox').val(''); 
+0

Hallo danke für die Antwort siehe meine Bearbeitung – Mick

Verwandte Themen