10

ダイアログ内にコメントボックス(テキストエリア)があります。コメントが正常に保存されたら、テキストエリアの内容をクリアしてダイアログボックスを閉じます。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();
}

と:

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

したがって、空にしようとしたときに同じテキストエリアを参照していないと推測しています。また試した

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

しかし、喜びはありません....アイデアはありますか?

4

3 に答える 3

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

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

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

また、マークアップが間違っています。textarea自己閉鎖要素ではありません。タグが必要です</textarea>。そして、それは必要でtype="text"はありません(おそらく実際には有効でもありません)

編集に従って、.aspxファイルの先頭でIDを静的に設定することができます(私はそれがそうだと思いますClientID="static"

または、別のセレクターを使用できます。

$('textarea').filter('[id*=CommentBox]').val('');
于 2013-03-21T10:50:45.690 に答える
4

あなたが使用することができますval

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

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

JSFiddle

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

編集

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

$('#<%=CommentBox.ClientID%>').val('');
于 2013-03-21T10:51:03.567 に答える
2
   $('textarea#CommentBox').val('');
于 2013-03-21T10:52:10.540 に答える