06. maj 2003 - 21:30
Der er
18 kommentarer og 1 løsning
Input field disabled
Hej... <select name="database_select"> <option value="mysql" selected>MySQL</option> <option value="interbase">Interbase/Firebird</option> </select> <p> Database <input type="text" name="database"><br> Username <input type="text" name="username"><br> Password <input type="password" name="password"><br> Skal have lavet så når man vælger interbase fra dropdown menuen, så bliver input feltet database gråt (og disabled). Nogen der lige kan ordne det for mig. Skulle ikke være så svært, jeg er bare ikke en hej til javascript.
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
Prøv det her, men du skal erstatte formNavn 2 gange: <select name="database_select" onchange="if(this.selectedIndex == 1){formNavn.database.disbled=true;}else{formNavn.database.disbled=false;}}"> <option value="mysql" selected>MySQL</option> <option value="interbase">Interbase/Firebird</option> </select> <p> Database <input type="text" name="database"><br> Username <input type="text" name="username"><br> Password <input type="password" name="password"><br> hth jes
Virker ikke - får en javascript fejl... du får lige hele koden her... <form action="data/first_setup.php" method="post" name="inst"> <? echo $inst[select_language];?><br> <select name=menu onChange="location.href = this.options[this.selectedIndex].value"> <option value=install.php?lang=en <?if ($_REQUEST['lang'] == "en") echo selected;?>><?echo $inst['language_option_english'];?></option> <option value=install.php?lang=dk <?if ($_REQUEST['lang'] == "dk") echo selected;?>><?echo $inst['language_option_danish'];?></option> </select> </p> <? echo $inst[select_database];?><br> <select name="database_select" onchange="if(this.selectedIndex == 1){inst.database.disbled=true;}else{inst.database.disbled=false;}}"> <option value="mysql" selected>MySQL</option> <option value="interbase">Interbase/Firebird</option> </select> <p> <?echo $inst[input_database];?> <input type="text" name="database"><br> <?echo $inst[input_username];?> <input type="text" name="username"><br> <?echo $inst[input_password];?> <input type="password" name="password"><br> <br> <input type="submit" name="Send" value="Send"> </form>
<select name="database_select" onchange="if(this.selectedIndex == 1){inst.database.disabled=true;}else{inst.database.disabled=false;}}"> <option value="mysql" selected>MySQL</option> <option value="interbase">Interbase/Firebird</option> </select> !-\ havde glemt 2 a'er i 2 * disabled Hvad er forøvrigt fejlen ?-|
Stadig syntaxfejl... :( Her er en kilde der er lidt nemmere at overskue... <form action="data/first_setup.php" method="post" name="inst"> <select name="database_select" onchange="if(this.selectedIndex == 1){inst.database.disbled=true;}else{inst.database.disbled=false;}}"> <option value="mysql" selected>MySQL</option> <option value="interbase">Interbase/Firebird</option> </select> <p> Database <input type="text" name="database"><br> Username <input type="text" name="username"><br> Password <input type="password" name="password"><br> <br> <input type="submit" name="Send" value="Send"> </form>
nu er jeg ikke en haj til det, men er det ikke et } for meget?
når jeg fjerner det sidste } i ovenstående kode, får jeg ingen fejl, men der sker heller ikke noget, når jeg klikker på ellementerne i dropdown boxen
Ja jeg fik ihvertfald strøet en } for meget -- og så fik jeg kigget hos W3C: The following elements support the disabled attribute: BUTTON, INPUT, OPTGROUP, OPTION, SELECT, and TEXTAREA. -- og der text jo ikke med -- kigger lige lidt efter style
ok... mener jeg har set det et sted, så det kan nok lade sig gøre. Takker i alt fald på forhånd...
Jeg fandt: elementReference.style.visibility="hidden" hvilket betyder at man slet ikke kan se elementet, men i første omgang bedre end ingenting regner jeg med ... <select name="database_select" onchange="if(this.selectedIndex == 1){inst.database.style.visibility="hidden";}else{inst.database..style.visibility="visible";}}">
Forresten er input vel ok? det er jo den jeg bruger - om den så er text burde vel ikke betyde noget, da de andre du har med, ikke er attributter til input, men individuelle tags
ok... lukker ikke lige spørgsmålet endnu, men skal nok give dig point...
Ja, men jeg har set det samme et andet sted, altså problemerne -- og der var også to .. -- så: <select name="database_select" onchange="if(this.selectedIndex == 1){inst.database.style.visibility="hidden";}else{inst.database.style.visibility="visible";}">
Mener også at visibility er et css2 tag. er vel ikke særlig browser-kompatibel endnu?
Du har ret i at det er css2, men javascript-biblen siger IE/windows:4, IE/Mac:4 og NN:6, så det er rimeligt crossbrowser
Kan det lade sig gøre, at få teksten Database foran inputfeltet til at forsvinde også?
Ja -- men umiddelbart kan jeg kun finde en div, så: <select name="database_select" onchange="if(this.selectedIndex == 1){document.getElementById[divDb].visibility=hidden;}else{document.getElementById[divDb].visibility=visible;}"> <option value="mysql" selected>MySQL</option> <option value="interbase">Interbase/Firebird</option> </select> <p> <DIV id="divDb" style="visibility:visible">Database <input type="text" name="database"></DIV>
Vi tilbyder markedets bedste kurser inden for webudvikling