![]() |
Kod:
var a = 0; parseInt(document.getElementById('antal').value)+1 //hämta antalet textfält Jag testade att loopa mig genom alla textfälten, men när man kommer till sista så vill det sig inte och skriptet dör helt. Kod:
var i = 1; |
du kanske skulle testa att document.getElementById('p'+i) inte är null innan du börjar använda det värdet till andra metoder?
|
Jag vet inte riktigt vad du menar med textfält men kanske funktionen document.getElementsByNames() eller någon av de andra dom-funktionerna som man kan använda för att iterera genom dokumentstrukturen?
Det bästa är nog om du försöker lära dig mer om html-sidor som DOM-objekt och funktionerna som finns för detta i javascript. |
använd document.getElementsByTagName('input') i kombination med en if-sats för att se så det är ett textfält så borde du kunna få reda på antalet text-fält på sidan.
|
Om det är input-elements värden du är ute efter så kan du också loopa igenom forms[x].elements[x] och se efter att forms[x].elements[i].type=='text' och då hämta värdena med forms[x].elements[i].value (forms[x].elements[x] har längden forms[x].elements[x].length).
Rättelse till mitt inlägg ovan: getElementsByNames() ska vara getElementsByName() men getElementsByTagName('input') är nog mer lämpat i det här fallet. |
Citat:
parseInt returnerar antingen ett tal eller NaN. Alltså evaluerar parseInt(something)!=null alltid true. Om du vill kolla på en egenskap hos ett objekt som du inte vet om det finns måste du kolla om det finns först, t ex: myObj.value=="val" resulterar i error om inte myObj finns. Skriv istället myObj&&(myObj=="val"). Nedanstående snurra borde fungera: Kod:
var i = 1; |
Alla tider är GMT +2. Klockan är nu 17:55. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson