/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Kan ikke insætte <select> med document.cre~
Fra : Leif Neland


Dato : 27-05-08 14:22

Jeg har en javascript funktion, der tilføjer en række i en tabel-form, når
man trykker på et link "Tilføj lokation"

Inputfelter fungerer som det skal, men laver jeg en select, bliver den bare
minimal bredde, uden data i, og 10 linier høj.
Lige som man bare laver en "<select></select>" uden "<option></option>" i.

Hvad kan der være galt? Kan man ikke fodre createElement med en hel
<select>-blok som man kan fodre den med en hel <input>
Eller kan man lave noget med innertext/innerHTML i stedet?


Her er funktionen:


function addRowDOM(tblId)
{

var tblBody = document.getElementById(tblId).tBodies[0];
var newRow = tblBody.insertRow(-1);
var rk = document.getElementById('nylok').value
rk++

// Denne blok virker ikke; laver en celle med en tom <select></select>
var newCell = newRow.insertCell(0);
var i0 = '<select name="nyafd_' + rk + '"><option
value="H">H</option><option value="K">K</option><option
value="Å">Å</option></select>';
var newInput = document.createElement(i0);
newCell.appendChild(newInput);
// Blokken virkede, da den skulle lave et inputfelt.


// Denne blok virker, laver en celle med et inputfelt
var newCell = newRow.insertCell(1);
var i0 = '<input type="text" size="8" name="nylagerkode_' + rk + '">';
var newInput = document.createElement(i0);
newCell.appendChild(newInput);

// Her følger et par blokke til at lave flere celler.

document.getElementById('nylok').value=rk;
}

Leif



 
 
Birger (27-05-2008)
Kommentar
Fra : Birger


Dato : 27-05-08 14:44

"Leif Neland" <leif@neland.dk> skrev i en meddelelse
news:483c0b05$0$56770$edfadb0f@dtext02.news.tele.dk...
> Jeg har en javascript funktion, der tilføjer en række i en tabel-form, når
> man trykker på et link "Tilføj lokation"
>
> Inputfelter fungerer som det skal, men laver jeg en select, bliver den
> bare
> minimal bredde, uden data i, og 10 linier høj.
> Lige som man bare laver en "<select></select>" uden "<option></option>" i.
>
> Hvad kan der være galt? Kan man ikke fodre createElement med en hel
> <select>-blok som man kan fodre den med en hel <input>
> Eller kan man lave noget med innertext/innerHTML i stedet?
>
>
> Her er funktionen:
>
>
> function addRowDOM(tblId)
> {
>
> var tblBody = document.getElementById(tblId).tBodies[0];
> var newRow = tblBody.insertRow(-1);
> var rk = document.getElementById('nylok').value
> rk++
>
> // Denne blok virker ikke; laver en celle med en tom <select></select>
> var newCell = newRow.insertCell(0);
> var i0 = '<select name="nyafd_' + rk + '"><option
> value="H">H</option><option value="K">K</option><option
> value="Å">Å</option></select>';
> var newInput = document.createElement(i0);
> newCell.appendChild(newInput);
> // Blokken virkede, da den skulle lave et inputfelt.
>
>
> // Denne blok virker, laver en celle med et inputfelt
> var newCell = newRow.insertCell(1);
> var i0 = '<input type="text" size="8" name="nylagerkode_' + rk + '">';
> var newInput = document.createElement(i0);
> newCell.appendChild(newInput);
>
> // Her følger et par blokke til at lave flere celler.
>
> document.getElementById('nylok').value=rk;
> }
>
> Leif


Uden at nærlæse din kode...
Du arbejder i DOM - og det er ikke HTML.
Du skal oprette <options> som elementer og indsætte dem i den <select> du
kreerer...

Birger
-----
http://bbsorensen.dk
http://varmeretter.dk - hverdagsmad. Sundt, nemt, hurtigt og billigt. Daglig
opdatering.



Leif Neland (27-05-2008)
Kommentar
Fra : Leif Neland


Dato : 27-05-08 18:24

Birger skrev:
> "Leif Neland" <leif@neland.dk> skrev i en meddelelse
> news:483c0b05$0$56770$edfadb0f@dtext02.news.tele.dk...
>> Jeg har en javascript funktion, der tilføjer en række i en tabel-form, når
>> man trykker på et link "Tilføj lokation"
>>
>> Inputfelter fungerer som det skal, men laver jeg en select, bliver den
>> bare
>> minimal bredde, uden data i, og 10 linier høj.
>> Lige som man bare laver en "<select></select>" uden "<option></option>" i.

>
> Uden at nærlæse din kode...
> Du arbejder i DOM - og det er ikke HTML.
> Du skal oprette <options> som elementer og indsætte dem i den <select> du
> kreerer...
>

Ja, det endte jeg også med.

Leif

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409076
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste