Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.11.2011, 16:52   #1
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,039
По умолчанию Сообщение о строке где нажата ссылка

Здравствуйте, подскажите пожалуйста, ситуация следующая есть на странице таблица в ней в строчках есть классы
Код:
<td class = "hideRowContol" style="cursor:hand;color:#ff0000" title="Скрыть строку">
   x 
 </td>
подскажите как alert'ом перед скрытием строки вывести "Вы нажали на" + Х + "строке таблицы, таблица имеет" + Y + "строк"
Ципихович Эндрю вне форума Ответить с цитированием
Старый 12.11.2011, 18:28   #2
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Код:
$('.hideRowContol').click(function() {
	var row = $(this).parent();
	var table = row.parent();
	var X = table.index(row)+1;// если отсчет с единицы
	var Y = table.find('tr').size();
	alert("Вы нажали на" + Х + "строке таблицы, таблица имеет" + Y + "строк");
});
Не проверял, но вроде должно работать.
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 12.11.2011, 18:51   #3
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,039
По умолчанию

спасибо, вот моя заготовка
Код:
<html>
<head>
<script language="javascript">
window.onload = function () {
        var allTd = document.getElementsByTagName("td"); //Берём все элементы td в документе
        var x;
        for(x = 0; x < allTd.length; x++) {
                if(allTd[x].className == "hideRowContol") {     //Тем, у которых соответствующий класс, вписываем действие скрытия строки
                        allTd[x].onclick = function () {                        // Назначаем на щелчок
                                delAllTrExclude(document.getElementById("mainTable"), this.parentNode); // вызов функции delAllTrExclude
                        }
                } else if (allTd[x].className == "showRowContol") { // Тем, кто имеет класс showRowContol
                        allTd[x].onclick = function () {                                // Назначаем на щелчок показ всех элементов таблицы
                                showAllTableTr(document.getElementById("mainTable"));
                        }
                }
        }
}
function delAllTrExclude(table, excludeTr) { // Удаляет все строки, кроме первой и указанной в вызове из указанной в вызове таблицы
        var allTableTr = table.getElementsByTagName("tr"), x;
        for(x = 1; x < allTableTr.length; x++) {
                if (allTableTr[x] !== excludeTr) {
                        allTableTr[x].style.display = "none";
                }
        }
}
function showAllTableTr(table) { // Показывает все строки переданной функции таблицы.
        var allTableTr = table.getElementsByTagName("tr"), x;
        for(x = 0; x < allTableTr.length; x++) {
                allTableTr[x].style.display = "";
        }
}
</script>
</head>
<body>
<table border="1" width="50%" id = "mainTable">
<tr>
<td width="100%" colspan="2" class = "showRowContol" style="cursor:hand;color:#00ff00" title="Показать строки">
v
</td>
</tr>
<tr>
<td width="100%">
Первая
</td>
<td class = "hideRowContol" style="cursor:hand;color:#ff0000" title="Скрыть строку">
x
</td>
</tr>
<tr>
<td width="100%">
Вторая
</td>
<td class = "hideRowContol" style="cursor:hand;color:#ff0000" title="Скрыть строку">
x
</td>
</tr>
<tr>
<td width="100%">
Третья
</td>
<td class = "hideRowContol" style="cursor:hand;color:#ff0000" title="Скрыть строку">
x
</td>
</tr>
<tr>
<td width="100%">
Четвёртая
</td>
<td class = "hideRowContol" style="cursor:hand;color:#ff0000" title="Скрыть строку">
x
</td>
</tr>
<tr>
 <td width="100%">
Пятая
</td>
<td class = "hideRowContol" style="cursor:hand;color:#ff0000" title="Скрыть строку">
x
</td>
</tr>
</table>
</body>
</html>
я новичёк, подскажите куда вставить Ваш ответ?
Ципихович Эндрю вне форума Ответить с цитированием
Старый 12.11.2011, 19:33   #4
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Мой код на jQuery, на чистом js как-то не доводилось работать с DOM.
Может вам поможет эта статейка: http://easywebscripts.net/javascript/godom.php
Alar, верни репу!
Naive вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Если нажата клавиша то.... bananasus Помощь студентам 6 18.02.2011 15:29
Где хранится ссылка на стартовую страницу супер Алексей Помощь студентам 7 28.12.2010 20:51
Как определить когда нажата кнопка мыши, если она нажата в совсем другой программе? Iceman Общие вопросы Delphi 2 19.10.2009 19:03
Нажата ли клавиша... Xcopy Паскаль, Turbo Pascal, PascalABC.NET 14 26.03.2009 11:14
нажата ли кнопка мыши? VDLab Общие вопросы Delphi 2 15.11.2006 00:59