Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.11.2011, 14:02
Новичок на форуме
Отправить личное сообщение для ViruSkin Посмотреть профиль Найти все сообщения от ViruSkin
 
Регистрация: 19.04.2011
Сообщений: 6

Скрытие(Удаление) столбца
Есть таблица вида, где количество столбцов неизвестно, количество столбцов класс "addon" могут меняться, и столбцы перед ними кроме id и name могут ещё добавиться. Сейчас решение такое (смотрите на код js)
<div id="colcheck">
	<input type="checkbox" value="0" />addon1<br/>
	<input type="checkbox" value="1" />addon2<br/>
	<input type="checkbox" value="2" />addon3<br/>
</div>
<table id="list">
	<thead>
		<tr>
			<td>id</td>
			<td>name</td>
			<td class="addon">addon1</td>
			<td class="addon">addon2</td>
			<td class="addon">addon3</td>
			<td>pid</td>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td>1</td>
			<td>elem1</td>
			<td>2</td>
			<td>2</td>
			<td>4</td>
			<td>7</td>		
		</tr>
		<tr>
			<td>2</td>
			<td>elem2</td>
			<td>4</td>
			<td>4</td>
			<td>2</td>
			<td>7</td>		
		</tr>
	</tbody>
</table>

$("#colcheck input").change(function(){
	sel = parseInt($(this).val())+2;
	$("#list").find("tr").each(function(){
		$(this).find("td:eq("+sel+")").toggle(1000);
	});
});

У меня тут решение работает если у меня известно количество столбцов до класса "addon". Можете подсказать как сделать код более гибким, или мб есть другое решения нахождения столбцов?
Ответить с цитированием
  #2 (permalink)  
Старый 15.11.2011, 14:44
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

sel = parseInt($(this).val())
//...
$(this).find("td.addon:eq("+sel+")").toggle(1000);
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #3 (permalink)  
Старый 15.11.2011, 14:51
Аватар для Serg_pnz
Сам по себе
Отправить личное сообщение для Serg_pnz Посмотреть профиль Найти все сообщения от Serg_pnz
 
Регистрация: 09.06.2009
Сообщений: 963

Ну так и запросите какая по номеру первая ячейка класса addon в родителе tr. Тогда Вам и будет известна "двоечка" для sel
Ответить с цитированием
  #4 (permalink)  
Старый 15.11.2011, 16:21
Новичок на форуме
Отправить личное сообщение для ViruSkin Посмотреть профиль Найти все сообщения от ViruSkin
 
Регистрация: 19.04.2011
Сообщений: 6

2walik, class addon только у заголовной строки
2Serg_pnz, спасибо .index() и было решением

sel = $("#list thead td").index($("#product_list .addon:eq("+$(this).val()+")"));
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заливка столбца в таблице debugx (X)HTML/CSS 5 14.11.2011 23:53
Перебор первого столбца таблицы an.semionov Элементы интерфейса 10 27.06.2011 16:06