Изменение переменных Jquery - PullRequest
1 голос
/ 01 января 2012

У меня есть некоторый jquery, который вводит текст в базу данных, а затем очищает текстовую область. Однако текстовая область не очищается. Ниже приведен код, указывающий, какая строка работает. Когда я заменяю эту строку предупреждением (commentbox), я получаю значение поля комментария, чтобы я знал, что переменная работает. Я просто не знаю, как очистить переменную.

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

        }
    });
});
});

Я должен также упомянуть, что когда я заменяю плохую строку на $ ('. CommentBox'). Val (''); значения понятны. проблема в том, что он очищает все текстовые области, а не только тот, который я использую .children (), чтобы найти.

</script>

Ответы [ 2 ]

2 голосов
/ 01 января 2012
var commentboxElem = $(this).children('.commentBox');

и в вашем успехе:

commentboxElem.val('');
0 голосов
/ 01 января 2012
 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

        }
    });

с commentbox="", вы пытались обновить содержимое переменной javascript, а не фактическое текстовое поле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...