2012-01-01 6 views
1

データベースにテキストを入力してからテキストエリアをクリアするjqueryがあります。ただし、テキストエリアはクリアされていません。以下は、どのラインが動作しているかを示すコードです。この行をalert(commentbox)と置き換えると、変数が動作していることがわかるので、コメントボックスの値が得られます。変数をクリアする方法は分かりません。Jquery変数を変更する

のjQuery:。

<script type='text/javascript'> 
$('document').ready(function() { 
$('.commentContainer').load('../writecomment.php'); 


$("form").on("submit", function (e) { 
    e.preventDefault(); 

    var $form = $(this); 
    var commentbox = $(this).children('.commentBox').val(); 

    $.ajax({ 
     "url": $form.attr("action"), 
     "data": $form.serialize(), 
     "type": $form.attr("method"), 
     success: function() { 
      $('.commentContainer').load('../writecomment.php'); 
      commentbox = ""; //this line doesnt work 

     } 
    }); 
}); 
}); 

私も言及する必要がありますiは$( 'commentBox ')との悪いラインを交換するときのval('');値は明確です。問題は、.children()を使って見つけ出すだけでなく、すべてのテキストエリアをクリアすることです。 commentbox=""

</script> 

答えて

2
var commentboxElem = $(this).children('.commentBox'); 

とあなたの成功に:

commentboxElem.val(''); 
+0

あなたは正しいです!私はあなたの答えを受け入れるでしょう。おかげで – kirby

+0

クールな兄弟。ありがとう – bondythegreat

0
var $form = $(this); 
var commentboxObj = $(this).children('.commentBox'); 
var commentBoxVal=commentboxObj.val(); 

$.ajax({ 
     "url": $form.attr("action"), 
     "data": $form.serialize(), 
     "type": $form.attr("method"), 
     success: function() { 
      $('.commentContainer').load('../writecomment.php'); 
      commentboxObj.val(""); //this will work 

     } 
    }); 

、あなたはjavascriptの変数ではなく、実際のテキストボックスの内容を更新しようとしていました。

+0

私はすでにその行を試してみましたが、それは仕事をdoenstことを言及している必要があります。私は同じ考えをしただろう。 – kirby

+0

.commentBoxはテキストエリアです。コメントボックスは、.commentBoxの値を持つjavascript変数です – kirby

+0

私は私の答えを更新しました。これを試して。 – Shyju

関連する問題