Avatar billede The Real Yoda Juniormester
23. august 2002 - 18:28 Der er 12 kommentarer og
1 løsning

mærkelig fejl i javascript

jeg har et script :

<script language='javascript'>

var tyxt = new Array();

tyxt[003]="Konsulent time 2200-0700";tyxt[004]="Konsulent time 0700-0900";tyxt[005]="asdf";tyxt[006]="asdf";tyxt[006]="asdf";tyxt[006]="asdf";tyxt[006]="asdf";tyxt[006]="asdf";tyxt[006]="asdf";tyxt[1234]="1234";tyxt[1234]="1234";tyxt[12]="123123";tyxt[002]="Konsulent time 1800-2200";tyxt[123]="safasf";tyxt[22]="safasf";

var pris= new Array();

pris[003]="600";pris[004]="400";pris[005]="200";pris[006]="1111";pris[006]="200";pris[006]="200";pris[006]="200";pris[006]="200";pris[006]="200";pris[1234]="123";pris[1234]="132";pris[12]="200";pris[002]="400";pris[123]="465";pris[22]="465";

function lookUp ( postnrfelt )  {
            document.form1.varepris.value = pris[postnrfelt.value]
            document.form1.varetekst.value = tyxt[postnrfelt.value]

     
}; //end lookUp ( Formfelt object )
//-->
</script>

og har formfelterne der hører til:


<select name="varenr" onChange="lookUp( this );">
<option value="003">003</option>
<option value="004">004</option>
<option value="005">005</option>
<option value="006">006</option>
<option value="006">006</option>
<option value="006">006</option>
<option value="006">006</option>
<option value="006">006</option>
<option value="006">006</option>
<option value="1234">1234</option>
<option value="1234">1234</option>
<option value="12">12</option>
<option value="002">002</option>
<option value="123">123</option>
<option value="22">22</option>
</select>
<input type="text" name="varetekst" value=" ">
<input type="text" name="varepris" value=" " size="8" maxlength="8">

Nogle gange returnerer den med "undefined" i begge felter .. andre gange kun i det ene felt.. og nogle gange virker det.. alt efter hvad man vælger i Select boxen.. hvorfor det ?

det skulle jo gerne virke hver gang...
Avatar billede jakoba Nybegynder
23. august 2002 - 18:39 #1
var pnr = parseInt( postnrfelt.option[postnrfelt.selectedIndex].value, 10 );
            document.form1.varepris.value = pris[pnr]
            document.form1.varetekst.value = tyxt[pnr]

mch Jakoba
Avatar billede The Real Yoda Juniormester
23. august 2002 - 18:57 #2
så siger den option is null or not an object ?????
Avatar billede The Real Yoda Juniormester
23. august 2002 - 18:58 #3
går ud fra at det skulle stå således?
function lookUp ( postnrfelt )  {
          var pnr = parseInt( postnrfelt.option[postnrfelt.selectedIndex].value, 10 );
            document.form1.varepris.value = pris[pnr]
            document.form1.varetekst.value = tyxt[pnr]
     
};
Avatar billede jakoba Nybegynder
23. august 2002 - 18:58 #4
Ups  option  skal være  options  (med s sidst)
Avatar billede The Real Yoda Juniormester
23. august 2002 - 19:03 #5
hehe så mangler der kun 1 lille ting... hvis det kan lade sig gøre...

hvis jeg bruger bogstaver i mit select felt..

og selvfølgelig oprette araays med bogstaver i...

så fucker den for vildt...  siger at "de bogstaver jeg har skrevet" er undefined...
Avatar billede jakoba Nybegynder
23. august 2002 - 19:11 #6
det du ber om der er faktisk det du havde :-))
  <option value="006">  value er en streng
men her er det jo et tal der står som index
  tyxt[006]="asdf";

så skriv:
function lookUp ( postnrfelt )  {
          var index = postnrfelt.option[postnrfelt.selectedIndex].value;
            document.form1.varepris.value = pris[index]
            document.form1.varetekst.value = tyxt[index]
};
og sørg så for at du definerer de to arrays med strenge:
  tyxt["006"]="asdf";
  tyxt["ord"]="indexeret med bogstaver";
men det skal altså gælde for alle celler i begge arrays.

mvh JakobA
Avatar billede The Real Yoda Juniormester
23. august 2002 - 19:22 #7
hvis bare man sørger for at der er et . i alle variabler vil de alle blive betraget som strenge .. right?
Avatar billede The Real Yoda Juniormester
23. august 2002 - 19:30 #8
er så småt kommet frem til at man ikke bare kan sætte et . eller et x ind..

hvad gør man så ?

Det er et felt hvor jeg både skal bruge kun talværdier og tal og bogstavkombinationer...
Avatar billede jakoba Nybegynder
23. august 2002 - 19:30 #9
ikke såvidt jeg ved.
men hvis du skriver anførselstegn rundom nogen bogstaver
    "0002"  // bogstaverne '0', '0', '0' og '2'
så er det en streng
Avatar billede The Real Yoda Juniormester
23. august 2002 - 19:32 #10
well.. har luret den på en anden måde..

hehe...

havde en autoincrease værdi jeg kunne bruge... hehe
Avatar billede The Real Yoda Juniormester
23. august 2002 - 19:34 #11
Har lige smidt 20 point ekstra til dig som tak for hjælpen... bon appetit
Avatar billede jakoba Nybegynder
23. august 2002 - 19:41 #12
takker
Avatar billede The Real Yoda Juniormester
23. august 2002 - 19:51 #13
der er flere points her hvis du er intereseret i at arbejde lidt for dem :-)

http://www.eksperten.dk/spm/249611
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