28. oktober 2004 - 17:49Der er
16 kommentarer og 1 løsning
afkryds radioknap når et felt udfyldes
jeg har følgende som flytter indholdet af et tekstfelt til et skjult felt. det går fint.
samtidig skal den afkrydse en radioknap. det vil den ikke..
function doEcho(){ var txt=document.form.dag.value; document.form.frekvensvalg.value=txt; document.form.frekvens[0].click; // == document.form.frekvens[0].checked; }
-- det er hundedumt at bruge 'form' som navn, da ordet er reserveret i javascript og henviser til den form, som ligger omkring et form-element, og derfor giver mange muligheder for fejl ...
-- og hvis man alligevel er inde i en form og skal have fat i et andet element i formen kan man ligesågodt udnytte den foran omtalte property på et form-element:
Når jeg ikke benytter property på et form-elementet er det fordi jeg er total begynderudi js. og det skal jo også helst være så jeg selv kan følge med. Jeg brugte omkring en time med mine murstens bøger uden at kunne finde ud af at man bare skulle skrive: document.form.frekvens[0].checked = true;.
Når du skriver onclick="f=this.form.dag;f.disabled=true;f.value='';this.form.frekvensvalg.value='alle'", så aner jeg simpelthen ikke hvad der sker.. For mig ser det ud som om at der sendes nogle paramtre ud i det blå og på mystisk vis ender det aligevel det rigtige sted. Det bliver et problem dels fordi jeg startede med det mest enkle dato gentagelsesmønster- Der er mange flere variable i de andre - og dels fordi når det er gjort skal jeg også tjekke om formen er udfyldt rigtigt med et tal og ikke bogstaver og hvad der ellers kan komme.
Jeg er bange for at jeg ville ende i et eller andet hvor jeg ikke kan komme videre..
I det her tilfælde gør det ikke så meget om felterne tømmes, idet selve beregninger først kommer i asp, hvor de hentes udfra hvilken radioknap der er valgt.
Jeg har dog stadig et problem hvis de vælger default. så er der ikke noget i parametrene så jeg skal have den til at udføre to scripts når man trykker på knappen.
<script type="text/javascript"> function doEcho(elm){ elm.form.frekvensvalg.value = elm.value; elm.form.frekvens[0].checked = elm.value.match(/^\d+$/)!=null;//så tester den, at det er tal !-) } </script>
-- og onclick="f=this.form.dag;f.disabled=true;f.value='';this.form.frekvensvalg.value='alle'", gør:
Hvis der klikkes på radio-knappen, så f=this.form.dag;//hent dag-feltet ind i variablen f f.disabled=true;//sæt feltet til ikke at modtage indskrivning f.value='';//sæt feltets værdi tom this.form.frekvensvalg.value='alle';//sæt en fornuftig værdi i frekvensvalg-feltet
Du sætter hele koden ind i onclick istedet for at kalde en funktion?
hvorfor vil du 'f.disabled=true;//sæt feltet til ikke at modtage indskrivning'? er det bare fordi vi tænker den forskelligt? min ide er at hvis de skriver i feltet flytter radiokanppen bare med.
(jeg er godt nok kommet til at gøre det ekstra kompliceret ved at flytte til skjulte felter, men der er en anden historie ;) Det eneste der i virkeligheden nødvendigt er at radioknappen følger med sidst ændrede ja, ja, ja sådann kan det gå)
-- min ide er, at hvis man afkrydser et felt, med en generisk værdi, skal det ikke være muligt at indskrive en anden værdi ...
29/10-2004 15:53:25 Meget muligt, men så er jeg ikke helt med !-)
Synes godt om
Ny brugerNybegynder
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.