jQuery .add () и empty () - PullRequest
       15

jQuery .add () и empty ()

2 голосов
/ 16 декабря 2011
<div id="msg_container">
  <span> Is this helpful ? </span>
  <span class="feedback"> 
     <a title="like"> Yes </a> 
     <a title="dislike"> No </a> 
  </span>
</div>

// jQuery Script
$('.feedback a').live('click', function() {
   var reference = $(this).parent().parent();
   $.post("URL", $("FORM").serialize(),
        function(data){
    // posted successfully and following will be executed
    reference.empty();
            reference.add('<span> You have given feedback </span>');

   }, "json");       
});

Процесс будет следующим:

  1. Пользователю будет задан вопрос: «Это полезно?Да Нет '
  2. После нажатия кнопки' Да 'или' Нет 'будет выполнен метод .post
  3. После успешного размещения на сервере
  4. Я хочу идентификатор элемента DOM= "msg_container", чтобы изменить весь контент на обычный промежуток или абзац с предложением "Вы дали свой отзыв", чтобы каждый пользователь мог оставить только один отзыв.

Проблема:

  1. После опустошения div "msg_container" .add () не работает.
  2. Даже без очистки "msg_container", .add () все равно не работает.
  3. Я прочитал документацию. Кажется, что .add () не работает со ссылочным объектом так же, как я делал выше.
  4. Мне нужно назначить ссылку на переменную как такую ​​переменную var = = $(this) .parent (); В противном случае после выполнения $ .post $ (this) потеряет свою исходную ссылку this.

Любая идея, как это решить? Я могу принять альтернативурешения, пока мое требование выполнено.

1 Ответ

2 голосов
/ 16 декабря 2011

Вы можете использовать append()

reference.append('<span> You have given feedback </span>');
...