none
Как закрепить столбец в Table? RRS feed

  • Вопрос

  • Есть таблица, в которую заносятся данные, нужно закрепить первый (левый) столбец, чтобы при скроллинге он не двигался,всегда бы слева?
    28 апреля 2012 г. 8:34

Ответы

  •  "Лови http://massless.org/_tests/grid1/" - это уже вообще изврат, использовать четыре фрейма для генерации одной таблицы.

    <div id="idiv">
    	<table cellpadding="0" cellspacing="0" border="0">
    	<tr valign="top">
    	<td>
    		<iframe 
    			src="colsleft.php?cols=3" 
    			scrolling="no" 
    			id="MASSGRID_TOP_LEFT" 
    			name="MASSGRID_TOP_LEFT" 
    			width="45" height="29"  
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    		<iframe 
    			src="rows.php?rows=40&cols=3" 
    			scrolling="no" 
    			id="MASSGRID_CENTER_LEFT" 
    			name="MASSGRID_CENTER_LEFT" 
    			height="297" 
    			width="45" 
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    		</td> 
    	<td width="100%">
    		<iframe 
    			src="colsright.php?cols=40&rows=40" 
    			scrolling="no" 
    			id="MASSGRID_TOP_RIGHT" 
    			name="MASSGRID_TOP_RIGHT" 
    			width="550" 
    			height="29" 
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    		<iframe 
    			src="iframe.php?cols=40&rows=40" 
    			id="MASSGRID_CENTER_RIGHT" 
    			name="MASSGRID_CENTER_RIGHT" 
    			width="550"
    			height="297"
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    	</td>
    	</tr>	
    	</table>
    </div>

    Вы представляете себе  какие колосальные сложности перед вами предстанут при реализации серверного кода который будет генерировать и обрабатывать всё это?

    28 апреля 2012 г. 10:36
    Модератор
  • Блин, сорри, я не заметил что это фреймы, однозначно в топку совет :)

    Ну смотрите дальше в гугл: jquery freezing columns, ответ есть - http://www.jeasyui.com/tutorial/datagrid/datagrid5.php

    • Предложено в качестве ответа iSanSYS 28 апреля 2012 г. 11:47
    • Помечено в качестве ответа Abolmasov DmitryModerator 3 мая 2012 г. 12:46
    28 апреля 2012 г. 11:47

Все ответы

  • Уточните вопрос пожалуйста. Какая таблица, Html ? Что именно надо сделать?
    28 апреля 2012 г. 8:41
    Модератор
  • Пишу в asp.net, таблица html, надо, чтобы при горизонтальном скроллинге левый столбец всегда был виден, так как таблица "длинная", то при просмотре не понятно к чему относятся данные.
    28 апреля 2012 г. 8:50
  • Да, то что вы хотите не тривиальная задача, но вот её решение. Но честно говаря это не очень хорошая затея если можете пересмотрите макет страницы, а если вынужденно то используйте.
    28 апреля 2012 г. 9:05
    Модератор
  • Разбить в div не могу, так как кол-во столбцов/строк меняется, и добавляются они в таблицу во время выполнения кода... Используя Panel, нельзя его разбить на части, n пикселей без скролла, остальные со скроллом?
    28 апреля 2012 г. 9:17
  • "нельзя его разбить на части, n пикселей без скролла, остальные со скроллом?" - такое не возможно. Можете создать две таблицы, рядышком. Первая будет содержать только тот столбец который не прокручивается, и сама будет статичной, а вторая остальную часть. Другого выхода я пока не вижу.
    28 апреля 2012 г. 9:26
    Модератор
    • Предложено в качестве ответа iSanSYS 28 апреля 2012 г. 10:12
    • Отменено предложение в качестве ответа iSanSYS 28 апреля 2012 г. 11:44
    28 апреля 2012 г. 10:12
  •  "Лови http://massless.org/_tests/grid1/" - это уже вообще изврат, использовать четыре фрейма для генерации одной таблицы.

    <div id="idiv">
    	<table cellpadding="0" cellspacing="0" border="0">
    	<tr valign="top">
    	<td>
    		<iframe 
    			src="colsleft.php?cols=3" 
    			scrolling="no" 
    			id="MASSGRID_TOP_LEFT" 
    			name="MASSGRID_TOP_LEFT" 
    			width="45" height="29"  
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    		<iframe 
    			src="rows.php?rows=40&cols=3" 
    			scrolling="no" 
    			id="MASSGRID_CENTER_LEFT" 
    			name="MASSGRID_CENTER_LEFT" 
    			height="297" 
    			width="45" 
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    		</td> 
    	<td width="100%">
    		<iframe 
    			src="colsright.php?cols=40&rows=40" 
    			scrolling="no" 
    			id="MASSGRID_TOP_RIGHT" 
    			name="MASSGRID_TOP_RIGHT" 
    			width="550" 
    			height="29" 
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    		<iframe 
    			src="iframe.php?cols=40&rows=40" 
    			id="MASSGRID_CENTER_RIGHT" 
    			name="MASSGRID_CENTER_RIGHT" 
    			width="550"
    			height="297"
    			marginwidth="0" marginheight="0" 
    			frameborder="0"></iframe>
    	</td>
    	</tr>	
    	</table>
    </div>

    Вы представляете себе  какие колосальные сложности перед вами предстанут при реализации серверного кода который будет генерировать и обрабатывать всё это?

    28 апреля 2012 г. 10:36
    Модератор
  • Блин, сорри, я не заметил что это фреймы, однозначно в топку совет :)

    Ну смотрите дальше в гугл: jquery freezing columns, ответ есть - http://www.jeasyui.com/tutorial/datagrid/datagrid5.php

    • Предложено в качестве ответа iSanSYS 28 апреля 2012 г. 11:47
    • Помечено в качестве ответа Abolmasov DmitryModerator 3 мая 2012 г. 12:46
    28 апреля 2012 г. 11:47
  • аналогичная хрень есть и в ExtJS, кстати
    28 апреля 2012 г. 11:48
  • Yatajga, iSanSYS давайте не будем спорить, а дождемся что скажет xciter.net


    Для связи [mail]

    28 апреля 2012 г. 12:59
    Модератор
  • Так и не спорим, Yatajga верно говорит - фреймы влекут за собой сложную реализацию )
    28 апреля 2012 г. 13:02
  • "Так и не спорим" - ну да, вроде не спорим, а предлагаем варианты.
    28 апреля 2012 г. 13:04
    Модератор