Не могу разобраться с jquery ajax
Приветствую Всех!
У меня проблемка, вот код: deledit.click(function(){ var linkId = "#fav"+$(this).attr("id"); var myArray = []; myArray[0] = $(linkId).attr("href"); myArray[1] = $(linkId).attr("alt"); $.ajax({url: "<?php echo $this->site; ?>user/ajaxDeleteFavoriteSite", type: "post", data: {linksArray: myArray}, success: function(data){ $(this).closest("tr").remove(); }, error: function(){ alert('Ошибка: нет интернет соединения!'); } }) }) Здесь в successе код $(this).closest("tr").remove(); не работает, если сделать так: deledit.click(function(){ var linkId = "#fav"+$(this).attr("id"); var myArray = []; myArray[0] = $(linkId).attr("href"); myArray[1] = $(linkId).attr("alt"); $(this).closest("tr").remove(); $.ajax({url: "<?php echo $this->site; ?>user/ajaxDeleteFavoriteSite", type: "post", data: {linksArray: myArray}, success: function(data){ }, error: function(){ alert('Ошибка: нет интернет соединения!'); } }) }) т.е. вывел $(this).closest("tr").remove(); до аякса, то он работает. Почему так? Заранее спасибо! |
О! Моя любимая тема! :)
this :) deledit.click(function(){ var linkId = "#fav"+$(this).attr("id"); var myArray = []; myArray[0] = $(linkId).attr("href"); myArray[1] = $(linkId).attr("alt"); var $closestTR = $(this).closest("tr") $.ajax({url: "<?php echo $this->site; ?>user/ajaxDeleteFavoriteSite", type: "post", data: {linksArray: myArray}, success: function(data){ $closestTR.remove(); }, error: function(){ alert('Ошибка: нет интернет соединения!'); } }) }) |
У Вас обработчик событий назначен до появления контента - для нового он работать не будет!
Обработчик на будущие контент и его события deledit.live('click',function() или для версий 1.7.0 и выше deledit.on('click',function() |
LittlePony,
спасибо! помогло) Deff, этот метод я уже пробовал и с live и с on ... не помогло, хотя все равно спасибо) |
Часовой пояс GMT +3, время: 02:47. |