Avatar billede gregorian Nybegynder
10. september 2004 - 17:14 Der er 42 kommentarer og
1 løsning

ParseInt fejl - tror jeg nok

Det drejer sig om variablen "antal" som gives til funktionen som værdien 291 i dette tilfælde, men det er i hvert fald en talværdi.
Det variablen skal skifte ud er talværdien 291 i linien:
var id = 291+parseInt(tal);
altså hvor jeg har forsøgt med "var id = parseInt(antal)+parseInt(tal);"
og flere andre måder, dog uden held..
Når jeg bruger denne kommer den med fejlen.. "et objekt er obligatirisk"


En del af koden:

function raekkefoelge(id,gammelt_billede_id,nyt_billede_id,antal) {
var old_id = id;
    if(nyt_billede_id > gammelt_billede_id) {
        for(var i=gammelt_billede_id; i<=nyt_billede_id; i++) {       
            for(tal=0;tal<=antal;tal++){
                var id = 291+parseInt(tal);
                var value = document.getElementById('select_'+id).options[document.getElementById('select_'+id).selectedIndex].value;


Hvad gør jeg forkert?
Avatar billede cpufan Juniormester
10. september 2004 - 19:09 #1
for(int tal=0;tal<=antal;tal++){
                var id = 291 + tal;
Avatar billede gregorian Nybegynder
10. september 2004 - 20:15 #2
det var nu ikke lige det..
ville godt have at den skulle se ud som her:
var id = antal+tal;

hvis antal = 291 og tal = 1 returnerer den bare 2991 og ikke 292 som den burde.

hvordan er syntaksen for at plusse og ikke ligge i forlængelse? normalt bruger jeg bare parseÍnt(antal) + parseInt(tal) også er den løst, men det virker ikke i det her tilfælde.
Avatar billede olebole Juniormester
10. september 2004 - 20:39 #3
<ole>

Jo, der er noget, du ikke fortæller ... du bliver nødt til at lægge en URL til det, du ikke kan få til at virke. Du må lave en grum fejl et andet sted. Det her fungerer helt som ventet fint:

var antal = 5;
for(tal=0;tal<=antal;tal++){
    var id = 291+tal;
    alert(id)
}

/mvh
</bole>
Avatar billede gregorian Nybegynder
10. september 2004 - 21:14 #4
det er præcis det jeg har prøvet og det virker som du siger ole..
kan være jeg har skrevet det lidt uklart:

Det der laver en fejl er:
var antal = 5;
for(tal=0;tal<=antal;tal++){
    var id = antal+tal;
    alert(id)
}

altså når jeg bruger variablen antal i stedet for 291, som har værdien 11
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:19 #5
Men det eksempel giver ingen fejl. Du må vise os tilstrækkelig meget kode, der giver
fejlen, for så kan vi hjælpe dig.
Avatar billede gregorian Nybegynder
10. september 2004 - 21:19 #6
2 min
Avatar billede olebole Juniormester
10. september 2004 - 21:23 #7
Hvis det er de 291, der er problemet, er denne variabel formodentlig sat med gåseøjne - eller hentet ud af et formfelt. Så skal du bare skrive:

antal = parseInt(antal);
for(tal=0;tal<=antal;tal++){
    var id = antal+tal;
    alert(id)
}
Avatar billede gregorian Nybegynder
10. september 2004 - 21:31 #8
da jeg sad og lavede en phps og php til jer så i kunne se eksempel opdagede jeg jo self min egen fejl.. min faktisk rigtig dumme fejl.. havde simpelthen formået at overbevise mig selv om at jeg skrive bruge variablen antal til det formål som det jo ikke var, men derimod mit id..
dum dummere MIG.

suk suk.. nu forstår jeg bedre hvorfor den lavede de mærkelig fejl ;) - kun 3 timer spildt på at have kigget sig blind på en fejl og overbevise sig selv..
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:34 #9
;) Næste gang så hent en sten i haven og prøv at forklare den problemet. Så
finder du nok selv ud af det...

(Hej Ole)
Avatar billede gregorian Nybegynder
10. september 2004 - 21:36 #10
I må squ undskylde at jeg har spild jeres tid på det her. ;( ked af..
tror faktisk jeg lige smutter udenfor og finder en sten med det samme..
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:38 #11
Tænk ikke på det som spildt tid, men som ufrivillig underholdning ;)
Avatar billede gregorian Nybegynder
10. september 2004 - 21:41 #12
suk..

troede lige den var der, men ak nej..

Erik.. er du frisk på lidt underholdning?

Det drejer sig om selectboksene ude i siden.
Det er en lang smørre at forklare så kig lige selv.
(man skal kunne ændre rækkefølgen på billederne hvor efter hvert valg submitter den formen og retter rækkefølgen)

http://gregorian.dk/billedeserie.php?id=18
skriver lige en dybere forklaring i næste post. så kan i kigge imens,
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:44 #13
Ja, den siger
Error: document.getElementById("select_" + id) has no properties
Source File: http://gregorian.dk/billedeserie.php?id=18
Line: 30
Avatar billede gregorian Nybegynder
10. september 2004 - 21:45 #14
eksempel:
Hvis jeg vælger i selectboks nr på at den skal have værdien nr 5 skal således ske:
1 -> 1
2 -> 5
3 -> 2
4 -> 3
5 -> 4

på samme måde når man gør det omvendt, at 5 skal have værdien 21 -> 1
1 -> 1
2 -> 3
3 -> 4
4 -> 5
5 -> 2

så er det self bare omvendt.

men hvis i kigger på det jeg har indtil nu er min kode således, med en fejl i:


function raekkefoelge(id,gammelt_billede_id,nyt_billede_id,antal) {
idminus = id-1;
var old_id = id;
    if(nyt_billede_id > gammelt_billede_id) {
        for(var i=gammelt_billede_id; i<=nyt_billede_id; i++) {       
            for(tal=0;tal<=antal;tal++){
                var id = idminus+tal;
                var value = document.getElementById('select_'+id).options[document.getElementById('select_'+id).selectedIndex].value;
                if(value == i && id != old_id) {
                    alert(value+' - '+id);
                    document.indhold['select_'+id].options[document.indhold['select_'+id].selectedIndex-1].selected = true;
                }               
            }
        }       
    } else {
        alert(nyt_billede_id);
        alert(gammelt_billede_id);
       
        for(var i=gammelt_billede_id; i>=nyt_billede_id; i--) {       
            for(tal=0;tal<=antal;tal++){
                var id = idminus-tal;
                var value = document.getElementById('select_'+id).options[document.getElementById('select_'+id).selectedIndex].value;
                if(value == i && id != old_id) {
                    alert(value+' - '+id);
                    document.indhold['select_'+id].options[document.indhold['select_'+id].selectedIndex+1].selected = true;
                }               
            }
        }       
    }
}


Det er et langt stykke kode ja, og håber i kan se hvor jeg vil hen,
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:45 #15
Hvis du laver en
alert('select_'+id);
i linie 29½ så kan du se hvad din id bliver beregnet til.
Avatar billede gregorian Nybegynder
10. september 2004 - 21:46 #16
#erik

når jeg vælger fra selectboks med værdi 4 til værdi 2 laver den i min:
et object er obligatirisk..
linie 30 tegn 5
Avatar billede olebole Juniormester
10. september 2004 - 21:48 #17
Ehhhh ... nu ved jeg jo, vi til en vis grad deler en lidt 'krydret' form for humor, Erik. Var der en sammenhæng mellem '(HejOle)' og hvad du netop havde foreslået i samme kommentar?  *LoooL*  ;D
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:50 #18
Brug en rigtig browser, gregorian, som fortæller dig hvad der er galt.
Hvad siger den alert jeg foreslår.
Ja, Ole, vi har vel alle brug for en sten i ny og næ.
Avatar billede gregorian Nybegynder
10. september 2004 - 21:54 #19
Den skriver select_292 frem til select_303 da den jo er i en løkke.
Avatar billede gregorian Nybegynder
10. september 2004 - 21:54 #20
hvilke browser vil du forslå? opera?
Avatar billede olebole Juniormester
10. september 2004 - 21:56 #21
"Ja, Ole, vi har vel alle brug for en sten i ny og næ." ... det sagde min mor også - og fik to. ) måneder efter fik hun mig  :)
Avatar billede gregorian Nybegynder
10. september 2004 - 21:56 #22
:)
Avatar billede olebole Juniormester
10. september 2004 - 21:56 #23
... 9 måneder efter fik hun mig  :)
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:57 #24
<select name="select_292" ...
kan jeg få fejl på, men den har jo heller ikke en id="select_292"
Avatar billede erikjacobsen Ekspert
10. september 2004 - 21:58 #25
Opera!=IE, så ja, den er fin. Jeg bruger selv en aldrende Netscape, men opfat
det ikke som en anbefaling.
Jeg ved godt Ole, at den engelske vægtenhed en "stone" er fundet ud fra din fødselsvægt.
Avatar billede gregorian Nybegynder
10. september 2004 - 21:58 #26
fejl:
linje 33
tegn 5
et objekt er obligatorisk
Avatar billede gregorian Nybegynder
10. september 2004 - 22:03 #27
den ene fejl lå i min forløkke med <= som skulle være <

nu fanger den abre ikke alle værdierne. mangler at ændre værdien 2 til 3..
(når man f.eks. rykker selectboksen med værdien 3 til 1.)
http://gregorian.dk/billedeserie.php?id=18

Erik.. hvad vil du foreslå mig at browser? bruger pt selv netcaptor 7.5 men den er ikke god at teste i da den har en tendes til ikke at give mig mine javafejl
Avatar billede erikjacobsen Ekspert
10. september 2004 - 22:06 #28
getElementById kræver et id - prøv det først
Avatar billede gregorian Nybegynder
10. september 2004 - 22:10 #29
fejlen fundet..
det id nummer jeg smider ind i min function er 292 af en eller anden grund. den mindste select_ boks er select_291 og præsis den som har værdi nummer 2. så der er grunden..

takker udmygt jeres tålmodighed, bukker dybt og banker mig i hovedet med min nyerhvervet sten og tænker tilbage på at Ole egentlig kun er en sten ;)
Avatar billede gregorian Nybegynder
10. september 2004 - 22:17 #30
hvis i vil se resultat er det lige her
http://gregorian.dk/billedeserie.php?id=18
Avatar billede gregorian Nybegynder
10. september 2004 - 22:18 #31
godt være jeg selv fandt fejlen men syntes virkelig ikke jeg burde have ulejligedet jer som jeg har gjort..

det sker ikke igen..
syntes i begge skal have pointene for at give mig min sten og for at jeg vågnede op.

tak
Avatar billede erikjacobsen Ekspert
10. september 2004 - 22:23 #32
Jeg samler hverken på sten eller point, tak.
Avatar billede gregorian Nybegynder
10. september 2004 - 22:25 #33
Jeg kan dog kun sige at jeg ikke samler på point, for sten gør jeg jo.
jeg siger jotak og rigtig god fortsat aften :D
Avatar billede olebole Juniormester
10. september 2004 - 22:52 #34
Erik >> havde du set billeder af mig som spæd, havde du udbrudt "Rolling Stone!". Jeg er blevet 130 cm højere på de 49 år - men ikke væsentlig tykkere  :D
Så du et billede af mig nu - og fra oven - ville du også udbryde "Rolling Stone!" ... men det er nok fordi "Moss Doesn't Grow on Rolling Stones"  ;D

Tag du bare pointene tilbage, gregorian ... og tag det roligt ... Vi andre laver også dumme fejl  ;o)
/mvh
Avatar billede gregorian Nybegynder
11. september 2004 - 00:11 #35
føler mig bare lidt dum over det..
I 2 fik da en sjov lille hyggesnak ;)
Avatar billede olebole Juniormester
11. september 2004 - 00:31 #36
Ja, det kan jeg ikke hjælpe med ... det gør man somregel i den situation.
Selvom man bliver bedre til at kode/prgrammere, bliver man ved med at lave dumme fejl. Fordelen er blot, at det sker lidt sjældnere og at man selv kan finde fejlen forholdsvis hurtigt ... så ingen andre når at se den  ;D

Ja, Erik og jeg plejer at være meget gode til at hygge os  :)
/mvh
Avatar billede roenving Novice
11. september 2004 - 00:57 #37
-- det værste ved at have pillet i en masse programmering er, at man nogen gange kommer i den situation, at de små grå ikke kan følge med i de ornsvage komplikationer, det er lykkedes en at rode sin kodning ud i ...
Avatar billede olebole Juniormester
11. september 2004 - 01:37 #38
Ja, nogen gange er man zq mere indvikler end udvikler ... og somme tider har frygtelig brug for en opløsning på 1024x78000 for at kunne overskue mine 800+ linier  :D

Efterhånden bruger jeg mere tid med en blok og en pen. Der bliver skrevet og tegnet kasser og pile, stiplede linier og pseudokode ..... og _så_ til sidst fat i PC'en med editor und alles  :)
/mvh
Avatar billede roenving Novice
11. september 2004 - 01:49 #39
Har du tænkt på at investere i en vægskærm ?-)

*lol*
Avatar billede olebole Juniormester
11. september 2004 - 01:57 #40
mmmmm .... ville give helt ny mening til udtrykket 'skriften på væggen'  :)
Avatar billede roenving Novice
11. september 2004 - 02:01 #41
*LoooOoool*
Avatar billede olebole Juniormester
11. september 2004 - 02:12 #42
Man kunne også anskaffe en lampeskærm og håbe på, man endelig så lyset  :)

SÅ ... OLE ...!!! GODNAT ...!!!
Avatar billede roenving Novice
11. september 2004 - 02:20 #43
sssssh, det er midt om natten ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester