Привет всем! Подскажите, кто знает, почему не срабатывает $("#message"+e.value).hide('fast'); $("#sent"+e.value).hide(); в цикле: Код (Text): e = document.forms["chech_all"].elements["checks[]"]; c = e.length; for (i = 0; i < c; i++){ if (e[i].checked){ //alert("ваш выбор: " + e[i].value); $.ajax({ url: '$http_path/members/groupprofile.php?messages=1&popup=1&delete=1&id='+e[i].value, success: function(data) { $("#message"+e[i].value).hide('fast'); $("#sent"+e[i].value).hide(); }, error: function(data) { $("#delete_processing").hide('fast'); $("#error").show(); } }); }; }; $("#delete_processing").hide('slow'); Если ставлю sleep(1) в цикле срабатывает, но все зависает.
Это отвратительно. Смесь старого JS и либы jquery. e.value точно имеет значение? Попробуйте задать всем формам, которые нужно скрыть, один css-класс. И по нему уже прячьте формы с помощью jquery
e.value точно имеет значение, т.к. из базы url: '$http_path/members/groupprofile.php?messages=1&popup=1&delete=1&id='+e.value все нормально удаляется. Если ставлю sleep(1) в цикле срабатывает, но все зависает. Задача собрать value(id) у выбранных checkbox и удалить из базы сообщения по id(value).
Не срабатывание может объясняться тем,что скрипт выполнился до того, как страница загрузилась. Попробуйте разместить скрипт в конце страницы.
Не помогло, я же говорю если ставлю sleep(1); в цикле, то все отлично срабатывает, но все зависает. Т.е. без for все работает, но мне нужна обработка не одного id, а массива содержащего id
Вообще эта муть в ID-шками пронумероваными - отвратительная затея. Делается примерно так проход: [js]$('div[id^="message"]').each(function() { // Скрывай элемент $(this).hide().delay(1000); }[/js]
Короче хочу сделать как на mail.ru, когда во входящих выделяешь галочками checkbox'ы писем и нажимаешь удалить, то строки уходят из таблицы без перегрузки страницы, а письма удаляются. Кто подскажет как сделать такое???
vitasonline самый оптимальный вариант - очистить и заново перестроить таблицу. в некоторых браузерах проблема с удалением элементов tr
vitasonline можно получить json-массив данных для вывода, очистить таблицу и заново её построить на основе полученного массива. удаление и вставка элементов - простые операции не только на jQuery, но и на чистом javascript.