Отправить пост запрос из данных
Здравствуйте, у меня есть таблица, которая имеет строки такого вида:
<ul class="striped-row"> <li class="two" style="width: 35px;"><input class="checkBoxToDelete" type="checkbox" style="display: inline;"/></li> <li class="two">@(FirstName + " " + LastName)</li> <li class="two">@EmailAddress</li> </ul> На @ внимание особого не обращайте, это часть Asp.net и особого значения тут не имеет. Задание в том, чтобы удалить отмеченные элементы и отправить запрос на сервер для того, чтобы и там они удалились. Отправлять нужно 3 столбец(email'ы). Вот js код(честно говоря говнокод, использую js только неделю, раньше веба вообще не касался): function DeleteSelectedRows() { $(".checkBoxToDelete").each(function (indx, element) { var toDelete = []; var currentElement = $(element); if (currentElement.attr("checked") == "checked") { var currentRow = currentElement.parent().parent(); //toDelete[toDelete.length - 1] = currentRow; alert(currentRow.eq(2).text()); //<--- currentRow.remove(); } }); Для поиска элементов использую jquery. С удалением нужной строки проблем особых не было, а вот тем чтобы получить email возникли некоторые проблемы. И еще вопрос, хотя наверное для него лучше создать отдельный топик; мы можем искать по всей странице с помощью функции $(). Как ограничить область поиска определенной частью этой страницы, например тем же currentRow из моего кода. Заранее спасибо! |
Ответ на второй вопрос: currentRow.find('your selector')
ЧТо касается первого - собери id-шники удаляемых строк и запости их на сервер. чета типа var id = [3,4,8]; // отмеченные строки. для примера $.post('/rows/delete/', {id: id}, function(){ alert('Строки удалены.'); }) На сервер придет пост запрос на /rows/delete/. Если верить этой статье http://haacked.com/archive/2008/10/2...to-a-list.aspx , то в качестве post-переменной с именем id будет коллекция отмеченных id'шников. |
Кстати я бы код по-другому писал.
// массив всех строк var $rows = $('.striped-row'); // массив строк для удаления var $rowsToDelete = $.filter($rows, function(item){ return $(item).find('.checkBoxToDelete').is(':checked'); }); // массив id'шников или чего там тебе нужно для POST var id = $.map($rowsToDelete, function(item){ return $(item).find('тут где у тебя Id или email хз').val(); }); alert(id); |
Спасибо!
|
Часовой пояс GMT +3, время: 09:42. |