"Colspan" или дайте кусочек мозга

Старый mweb

Модератор: [mweb team]

"Colspan" или дайте кусочек мозга

Сообщение Padonak Вс апр 01, 2007 15:34

вобщем проблема вот в чем. есть таблица:

Код: Выделить всё
<table id="deliver_way" align="center" border="0" cellpadding="5" cellspacing="5" width="100%">
<tbody>
<tr>
<td width="33%"><input type="radio" name="deliver" value="0"> Самовывоз</td>
<td><input type="radio" name="deliver" value="1"> Доставка на дом</td>
<td width="33%"><input type="radio" name="deliver" value="2"> Отправка почтой</td>
</tr>
</tbody>
</table>


обычная такая. я в нее вознамерилсо добавлять и убирать ряд с одной ячейкой при выборе какой-то из 3 радиокнопок. с этой низменной целью написал вот такую ф-цию:

Код: Выделить всё
var deliver_choise = new Array();
deliver_choise[0] = "samovivoz samovivoz samovivoz";
deliver_choise[1] = "dostavka na dom";
deliver_choise[2] = "po4ta";

function radioChanger(x){
var tbl = document.getElementById("deliver_way");
if(document.getElementById("new_row")){tbl.tBodies[0].deleteRow(1);postDiv.style.height = 500 + "px";}
var newRow = tbl.insertRow(1);
newRow.setAttribute("id","new_row");

if(navigator.userAgent.indexOf("MSIE") != -1){
var newCell = newRow.insertCell(0);
newCell.setAttribute("colspan","3");
newCell.style.textAlign = "center";
newCell.style.backgroundColor = "#f8f8cc";
newCell.innerHTML = deliver_choise[x];
}
else{
var newCell = newRow.insertCell(0);
newCell.setAttribute("colspan","3");
newCell.style.textAlign = "center";
newCell.style.backgroundColor = "#f8f8cc";
newCell.innerHTML = deliver_choise[x];
}
postDiv.style.height = 500 + newCell.offsetHeight + "px";
}


разделение кода по браузеру там только из-за того что эта гадина в ФФ и Опере работает а в ИЕ возник головняк т.е. разделил я код до выяснения причины. беда состоит в том что мне необходимо указать для создаваемой ячейки атрибут colspan="3" дабы расположить ее содержимое по центру под верхними уже существующими тремя ячейками предыдущего ряда в котором расположены радиокнопки. но как я ни извращалсо колспан этот не могу задать в ИЕ сцуко! он делает ячейку длиной в 1/3 хоть задавай колспан хоть не задавай. я уже в ярости потому как уверен что проблема лишь в моей умственной отсталости а не в браузере. как сцуко назначить проклятый колспан?! -08-

колдуны поделитесь разумом -43-
Uncaught TypeError: Изображение

Изображение
Аватара пользователя
Padonak
Философ-разговорник
 
Сообщения: 3872
Зарегистрирован: Вт дек 13, 2005 3:23
Откуда: Ростов-на-Дону

Сообщение Padonak Пн апр 02, 2007 0:18

победил я этот ахтунг -03- как я и подозревал всему виной была моя умственная отсталость и крайняя самоуверенность (очень кстати распространенные недостатки). мне не так давно Муерто вправлял уже мозг именно по данной теме но я не сообразил что тут такой же случай. подсказку обнаружил путем вывода всех свойств ячейки опознаваемых текущим браузером. он выводит их именно так как согласен их понимать что собственно и явилось решением проблемы. список довольно длинный:

Код: Выделить всё
length = 97
language = [object]
dataFld = [object]
onmouseup = [object]
className = undefined
oncontextmenu = [object]
onrowexit = [object]
onbeforepaste = [object]
onactivate = [object]
lang = [object]
onmousemove = [object]
onmove = [object]
onselectstart = [object]
oncontrolselect = [object]
onkeypress = [object]
oncut = [object]
onrowenter = [object]
onmousedown = [object]
onpaste = [object]
id = [object]
onreadystatechange = [object]
onbeforedeactivate = [object]
hideFocus = [object]
dir = [object]
onkeydown = [object]
onlosecapture = [object]
ondrag = [object]
ondragstart = [object]
oncellchange = [object]
onfilterchange = [object]
onrowsinserted = [object]
ondatasetcomplete = [object]
onmousewheel = [object]
ondragenter = [object]
onblur = [object]
onresizeend = [object]
onerrorupdate = [object]
onbeforecopy = [object]
ondblclick = [object]
onkeyup = [object]
onresizestart = [object]
onmouseover = [object]
onmouseleave = [object]
onmoveend = [object]
title = [object]
onresize = [object]
contentEditable = [object]
dataFormatAs = [object]
ondrop = [object]
onpage = [object]
onrowsdelete = [object]
style_Str = undefined
onfocusout = [object]
ondatasetchanged = [object]
ondeactivate = [object]
onpropertychange = [object]
ondragover = [object]
onhelp = [object]
ondragend = [object]
onbeforeeditfocus = [object]
disabled = [object]
onfocus = [object]
accessKey = [object]
onscroll = [object]
onbeforeactivate = [object]
onbeforecut = [object]
dataSrc = [object]
onclick = [object]
oncopy = [object]
onfocusin = [object]
tabIndex = [object]
onbeforeupdate = [object]
ondataavailable = [object]
onmovestart = [object]
onmouseout = [object]
onmouseenter = [object]
onlayoutcomplete = [object]
implementation = [object]
onafterupdate = [object]
ondragleave = [object]
vAlign = [object]
scope = [object]
noWrap = [object]
borderColor = [object]
borderColorLight = [object]
align = [object]
abbr = [object]
chOff = [object]
axis = [object]
headers = [object]
width = [object]
background = [object]
bgColor = [object]
borderColorDark = [object]


--------- >>>  colSpan = [object]


ch = [object]
height = [object]
rowSpan = [object]


я выделил в писке интересующий меня атрибут. как можно лицезреть ИЕ его воспринимает только в данном написании. после того как я исправил одну-единственную букву в строке

newCell.setAttribute("colspan","3");

на

newCell.setAttribute("colSpan","3");

все заработало -14-

может быть кому-нибудь пригодится мой опыт наступания на грабли поэтому я решил сие тут изложить на чем данный топик можно считать закрытым -02-
Uncaught TypeError: Изображение

Изображение
Аватара пользователя
Padonak
Философ-разговорник
 
Сообщения: 3872
Зарегистрирован: Вт дек 13, 2005 3:23
Откуда: Ростов-на-Дону

Сообщение Muerto Пн апр 09, 2007 23:53

Можно считать закрытым не считая того, что я заметил бы на счет полезности установки аттрибутов способом .setAttribute
Не далее как сегодня, мы с многоуважаемой Kat ломали голову, почему в ФФ при изначальной установке кнопки в disabled, потом JavaScript-ом она при установке document.getElementById('ИД кнопки').disabled=true - открывало кнопку. Нонсенс! (Кстати, на моем компе, почему-то данный эффект не воспроизводился). А вот document.getElementById('ИД кнопки').setAttribute('disabled', 'true', ''); - срабатывал на ура. Есть о чем задуматься, господа и дамы!
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва


Вернуться в Архив

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14

cron