login  Naam:   Wachtwoord: 
Registreer je!
 Forum

simpelere manier?

Offline lau - 15/08/2006 12:59
Avatar van lauHTML interesse Is er een simpelere verkorte manier van onderstaande js code:
  1. function setButtonVisible() {
  2. if (document.getElementById("radio1")) {
  3. document.getElementById("Verder").style.visibility = (document.getElementById("radio1").checked == true) ? "visible" : "hidden";
  4. }
  5. if (document.getElementById("radio2")) {
  6. document.getElementById("Opslaan").style.visibility = (document.getElementById("radio2").checked == true) ? "visible" : "hidden";
  7. }
  8. if (document.getElementById("radio3")) {
  9. document.getElementById("Afsluiten").style.visibility = (document.getElementById("radio3").checked == true) ? "visible" : "hidden";
  10. }
  11. }


En ik weet niet waar de 'return' code moet staan, tenminste... ik lees overal dat een functie minimaal 1 return moet hebben.

5 antwoorden

Gesponsorde links
Offline Maarten - 15/08/2006 13:00 (laatste wijziging 15/08/2006 13:02)
Avatar van Maarten Erelid In een array zetten en doorlopen?
  1. function setButtonVisible() {
  2. for(i = 1; i < 4; i++) {
  3. if(document.getElementById('radio' + i)) {
  4. document.getElementById('verder').style.visibility = (document.getElementById('radio' + i).checked == true) ? 'visible' : 'hidden';
  5. }
  6. }
  7. return true;
  8. }
Offline Ontani - 15/08/2006 13:01
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
moet nie persé een return hebben.

je zou nog dit kunnen doen:
  1. function setButtonVisible() {
  2. for (i=1;i<=3;i++) {
  3. if (document.getElementById("radio"+i)) {
  4. document.getElementById("Verder").style.visibility = (document.getElementById("radio"+i).checked == true) ? "visible" : "hidden";
  5. }
  6. }
  7. }
Offline haytjes - 15/08/2006 13:27
Avatar van haytjes Gouden medailleGouden medaille

JS gevorderde
  1. var radio = ["Verder","Opslaan","Afsluiten"];
  2. function setButtonVisible() {
  3. var y = radio.length;
  4. for(x=0; x<y;x++) {
  5. if (document.getElementById("radio"+(x+1))) {
  6. document.getElementById(radio[x]).style.visibility = (document.getElementById("radio"+(x+1)).checked == true) ? "visible" : "hidden";
  7. }
  8. }


zoiets bedoel je dan?
Offline lau - 15/08/2006 13:41
Avatar van lau HTML interesse Jah... zoiets bedoelde ik...
@haytjes, je mist nog een accolade onderaan.
dus ik mag ervan uit gaan dat je hierbij geen return nodig hebt?
Offline Thomas - 15/08/2006 13:46
Avatar van Thomas Moderator Ja.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.431s