2013-03-21 18 views
6

ダイアログ内にコメントボックス(テキストエリア)があります。コメントが正常に保存されたら、テキストエリアの内容をクリアしてダイアログボックスを閉じます。 ATMではダイアログボックスは閉じますが、内容を消去する必要があります。すべての返信用サブミット後にテキストエリアの内容を空にする

<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'); 

おかげ


編集:ヘルプみんなのため 感謝します。コードを実行していますが、動作していません。私はそれが正しいバレスをピックアップし、私が使用していた結着問題を解決するために、関係していと思う:

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

ブレークポイントリターンを通じ実行すると:

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

AND:

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

だから私はそれを空にしようとすると、同じテキストエリアを参照していないと推測しています。 他にも試しました

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

喜んでいませんか.... ay ideas?

答えて

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

val()メソッドを使用し、空の文字列を渡します。

ドキュメント:http://api.jquery.com/val

はまた、あなたのマークアップが間違っています。 textareaは自己終了要素ではありません。 </textarea>タグが必要です。そしてtype="text"はあなたの.aspxファイルの先頭にある静的であるとIDを設定するか、(どちらかではない、実際に有効なおそらく)あなたの編集を1として

必要はありません

(私はそれがClientID="static"だと思います)

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

http://api.jquery.com/val/:あなたはvalを使用することができます

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

こんにちはおかげで私の編集 – Mick

+0

@Mickを参照してください - あなたの編集に基づいて私の答えを更新しました。 – ahren

+0

良い仕事は別の選択が働いた。助けてくれてありがとう – Mick

4

:それとも、別のセレクタを使用することができます

JSFiddle

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

編集

あなたは正しくASP.NET生成されたテキスト領域を参照していません。あなたは、あなたの質問に示されているとして、あなたは好きそれを参照する必要があります:返信用

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

返信いただきありがとうございます。私の編集 – Mick

+0

@Mickを参照してください - 私の答えを更新しました。 –

+0

良い仕事。助けをありがとう – Mick

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

私の編集を参照してください返信いただきありがとうございます – Mick

関連する問題