Hej!
Jag har ett problem där jag skapat ett antal <INPUT Type='TEXT'...> dynamiskt med Javascript. När jag postar formuläret så ska alla input-fält loopas genom och informationen ska sparas i en databas.
Detta funkar alldeles utmärkt i IE, dock inte i Firefox. :(
Den delen av Javascriptkoden som skapar INPUT-fältet ser ut såhär:
var altNr=document.getElementById("AntalAlternativ").value;
if (isIE) {
td2.appendChild(document.createElement("<INPUT TYPE='TEXT' NAME='alt"+altNr+"' SIZE='70'>"));
} else {
var oData;
oData=document.createElement("INPUT");
oData.name="alt"+altNr;
oData.type="TEXT";
oData.value="";
oData.size=70;
td2.appendChild(oData);
}
Detta är inte all kod, men en del av den...
I ASP-kode sedan så vill jag hämta värdet (texten) som matats in på följande sätt i en loop (därav i):
Request.Form("alt" & i)
Det fungerar i IE som sagt, men inte i Firefox. Den ger bara en tom textsträng. Rätt antal alternativ loopas genom, det vet jag.
Det verkar som den i ASP inte vill hitta input-taggen
Nån som kan hjälpa mig?
Peter SMedlem sedan dec. 20025 483 inlägg Hejsan!
Ett enkelt exempel som fungerar för mig:
function f()
{
var elm = document.createElement("INPUT");
elm.name = "alt0";
elm.type = "text";
document.forms[0].appendChild(elm);
}
<form>
<input type="button" value="Add <input>" onclick="f()">
<input type="submit">
</form>
Har du en länk till sidan som visar problemet?
Kan inte länka till sidan, det är ett internprojekt.
Problemet är inte att input-textfälten inte dyker upp där de ska. Hela den biten fungerar som det ska.
Det är när man trycker på submit-knappen och postar formuläret och vill läsa in det som skrivits i de nya input-textfälten som det inte fungerar i Firefox, IE fungerar däremot.
Det verkar som att request.form("alt" & i) inte kan hitta de dynamiskt tillagda fälten. Kan detta bero på att jag använder <tbody>? Kan det vara så att den nästlar html-koden på ett sätt så den inte hittar dem? Nu spånar jag fritt... :)
Peter SMedlem sedan dec. 20025 483 inlägg Nu har jag ingen möjlighet att testa ovanstående exempel med serverkod, men om du kikar på kodsnutten i mitt förra inlägg ser du att det fungerar med GET-metoden.
Får du något felmeddelande i FF:s JS-konsol?
Problemet är löst och det var så pinsamt att jag knappt vill skriva det här, men eftersom du tog dig tid att titta på det...
Form-taggen befann sig i en if-sats, och när jag flyttade ut den så funkade det.
Snälla, banna mig inte från forumet nu! :p
Peter SMedlem sedan dec. 20025 483 inlägg :birp
Glöm inte att markera ditt senaste inlägg som slutgiltigt.