Avatar billede jespera Nybegynder
16. marts 2004 - 12:24 Der er 26 kommentarer og
1 løsning

Hvordan smider jeg en værdi ned i et hidden field

Hej Alle

Jeg har en funktion som checker en radion box af:

function checkRadioGroup(frm, strName, strValue)
    {     
        if (strName == "typ"){                             
          var chk = frm.elements[strName + "_TEMP"];
                for(i=0;chk.length>i;i++)
                    chk[i].checked=(chk[i].value==strValue)
        }
    }

Hvordan kan jeg ændre den funktion så den smider en value ned i et hiddenfield som ser sådan ud

<input type='hidden' name='LID' value=''>

Håber i forstår
Avatar billede mm12010 Nybegynder
16. marts 2004 - 12:29 #1
chk[i].checked=(chk[i].value==strValue)
  ændres til:
if(chk[i].value==strValue) frm.LID.value='værdi';
  eller - hvis det er en variabel der skal indsættes:
if(chk[i].value==strValue) frm.LID.value=valVar;
Avatar billede jespera Nybegynder
16. marts 2004 - 12:38 #2
Hmm

Er det her så rigtigt, syntes ikke det virker. StrValue hold LID value.

function checkForLID(frm, strName, strValue)
    {         
        if (strName == "LID"){           
            var chk = frm.elements[strName];
                for(i=0;chk.length>i;i++)
                    frm.LID.value=strValue;
        }
Avatar billede mm12010 Nybegynder
16. marts 2004 - 12:40 #3
function checkRadioGroup(frm, strName, strValue)
    {     
        if (strName == "typ"){                             
          var chk = frm.elements[strName + "_TEMP"];
                for(i=0;chk.length>i;i++)
                    if(chk[i].value==strValue) frm.LID.value=strValue;
        }
    }
Avatar billede jespera Nybegynder
16. marts 2004 - 12:50 #4
Hmm der er noget jeg ikke forstå

strName = LID
strValue = xxx (LID's value)

Herefter har jeg så en hidden field:

<input type='hidden' name='LID' value=''>

Dette felt skal så have strValue.

Håber det giver mere mening for det virker desvæære ikke endnu :-)
Avatar billede mm12010 Nybegynder
16. marts 2004 - 12:52 #5
hvad er betingelsen for at værdien skal indsættes?
Avatar billede jespera Nybegynder
16. marts 2004 - 12:54 #6
at if strName == "LID"

Det er den for jeg har lavet en alert på denne og valuen er også ok.
Avatar billede mm12010 Nybegynder
16. marts 2004 - 12:56 #7
sådan?

function checkForLID(frm, strName, strValue){         
        if(strName=="LID") frm.LID.value=strValue;
        }
Avatar billede jespera Nybegynder
16. marts 2004 - 13:02 #8
mærkeligt det virker ikke. (checkRadioGroup virker perfekt)
Avatar billede mm12010 Nybegynder
16. marts 2004 - 13:05 #9
hvad giver dette?

function checkForLID(frm, strName, strValue){
        alert(strValue);
        alert(strName+"==LID");
        if(strName=="LID") frm.LID.value=strValue;
        }
Avatar billede jespera Nybegynder
16. marts 2004 - 13:08 #10
250
LID==LID
Avatar billede jespera Nybegynder
16. marts 2004 - 13:08 #11
kan det være fordi at frm er et objekt ??
Avatar billede jespera Nybegynder
16. marts 2004 - 13:10 #12
se evt spg omkring checkRadioGroup: http://www.eksperten.dk/spm/475988
Avatar billede mm12010 Nybegynder
16. marts 2004 - 13:20 #13
hvordan kalder du funktionen?
Avatar billede jespera Nybegynder
16. marts 2004 - 13:22 #14
jamen lige som jeg kalder checkRadioGroup, sådan

checkForLID(frm, aFields[i], aFields[i+1]);
Avatar billede mm12010 Nybegynder
16. marts 2004 - 13:31 #15
hvordan kommer det til udtryk at det ikke virker?
Avatar billede jespera Nybegynder
16. marts 2004 - 13:50 #16
at den ikke sætter en værdi i mit hiddenfield !!
Avatar billede mm12010 Nybegynder
16. marts 2004 - 14:01 #17
kan du få dette til at virke?

<a href="#" onClick="alert(document.formular.hiddenField.value);return false;">vis hidden</a><br>
<a href="#" onClick="document.formular.hiddenField.value+='123 ';return false;">inds&aelig;t i hidden </a>
<form name="form1" method="post" action="">
<input type="hidden" name="hiddenField" value=''>
</form>
Avatar billede mm12010 Nybegynder
16. marts 2004 - 14:02 #18
hvad er 'frm' her:

checkForLID(frm, aFields[i], aFields[i+1]);
Avatar billede mm12010 Nybegynder
16. marts 2004 - 14:05 #19
det skal enten være:

<tag ... onclick="checkForLID(document.FORMNAVN, aFields[i], aFields[i+1]);">

eller:

<form ... onsubmit="checkForLID(this, aFields[i], aFields[i+1]);">
Avatar billede jespera Nybegynder
16. marts 2004 - 14:11 #20
ej nu forstå jeg intet.....

checkForLID bliver kaldt altså !!!
Men den smider bare ikke noget ned i mit hidden field. Jeg har jo lige givet dig resultatet. Altså 250 og LID==LID dvs at det hiddenfield der hedder LID skal nu have value=230....Det virker med checkRadioGroup (http://www.eksperten.dk/spm/475988) frm er et formobjekt

Håber du forstår :-)
Avatar billede jespera Nybegynder
16. marts 2004 - 14:19 #21
nå jeg laver alert på frm giver den mig dette -> [object]
Avatar billede jespera Nybegynder
16. marts 2004 - 14:26 #22
hmm mærkeligt.....

Jeg kan godt sætte værdi ind hvis det ikke er et hiddenfield ???
Avatar billede mm12010 Nybegynder
16. marts 2004 - 14:26 #23
hmm... ?-)

prøv sådan:

function checkForLID(frm, strName, strValue){
  if(strName=="LID"){
    frm.LID.value=strValue;
    alert("indsat: "frm.LID.value);
    return;
    }
  alert("ikke indsat");
  }
Avatar billede mm12010 Nybegynder
16. marts 2004 - 14:26 #24
alert("indsat: "+frm.LID.value);
Avatar billede jespera Nybegynder
16. marts 2004 - 14:31 #25
Den siger indsat: 250 Men den smider ikke noget ned i feltet. Men hvis jeg laver det om til et almideligt felt så virker det. Hvorfor virker det ikke med et hiddenfield???
Avatar billede jespera Nybegynder
16. marts 2004 - 14:35 #26
Jamen det virker sku. Troede den skrev det ind i coden, altså vis kilde code men det gør det altså ikke....

Sorry...........
Avatar billede mm12010 Nybegynder
16. marts 2004 - 16:13 #27
hehe - ok, bare det virker ;-)
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