Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

DOM w Mozilli dziala, a w IE nie

2 views
Skip to first unread message

The Stone

unread,
Nov 14, 2004, 10:36:33 AM11/14/04
to
function Tabela(){
TABLE=document.createElement('table');
for (i=0;i<document.getElementById('wiersze').value;i++){
TR=document.createElement('tr');
for (j=1;j-1<document.getElementById('kolumny').value;j++){
TD=document.createElement('td');
TD.appendChild(document.createTextNode(i+1 + '/' + j));
TR.appendChild(TD);
}
TABLE.appendChild(TR);
}
document.getElementById('menu').appendChild(TABLE);
}

ta funkcja pieknie dziala w Mozilli, ale w IE doslownie nic sie nie dzieje
:( czy mozecie mi powiedziec dlaczego ( ewentualnie jak to zmodyfikowac by
dzialal tez w IE ) ??

Tomasz Cenian

unread,
Nov 14, 2004, 11:18:57 AM11/14/04
to

Użytkownik "The Stone" <++thes...@tenbit.pl> napisał w wiadomości
news:cn7cm9$ohu$2...@news.onet.pl...

> function Tabela(){
> TABLE=document.createElement('table');
> for (i=0;i<document.getElementById('wiersze').value;i++){
> TR=document.createElement('tr');
> for (j=1;j-1<document.getElementById('kolumny').value;j++){
> TD=document.createElement('td');
> TD.appendChild(document.createTextNode(i+1 + '/' + j));
> TR.appendChild(TD);
> }
> TABLE.appendChild(TR);
> }
> document.getElementById('menu').appendChild(TABLE);
> }
>
> ta funkcja pieknie dziala w Mozilli, ale w IE doslownie nic sie nie dzieje


Baaaaaaardzo źle dobrałeś nazwy zmiennych.

--
TC


Eluś

unread,
Nov 14, 2004, 7:04:15 PM11/14/04
to
IE nie chce 'appendować' TR-ów bezpośrednio do tabelki, musisz dołożyć
wewnątrz 'tbody':

<script type="text/javascript">
onload=function(a,b,c,d,i,j){
a=document.createElement('table')
b=document.createElement('tbody')
a.appendChild(b)
for(i=0;i<4;i++){
c=document.createElement('tr')
for (j=1;j-1<4;j++){
d=document.createElement('td')
d.appendChild(document.createTextNode(i+1+'/'+j))
c.appendChild(d)
}
b.appendChild(c)
}
document.body.appendChild(a)
}
</script>

Mało kto jednak wie że istnieją specjalne 'DOMowe metody tabelkowe'
Poniżej prezentuje jedną z nich (+ mały pack)

<script type="text/javascript">
onload=function(a,b,c,i,j){
for(i=0,a=document.createElement('table');i<4;i++)
for(j=1,b=a.insertRow(i);j-1<4;j++){
c=document.createElement('td')
c.innerHTML=i+1+'/'+j
b.appendChild(c)}
document.body.appendChild(a)
}
</script>

pamiętaj też o deklaracji (jawnej czy niejawnej) zmiennych lokalnych.

0 new messages