Näytä yksi teksti ja piilota muut

Anonyymi

Sivulla on monta radio buttonia, joiden perässä on näkymätön label-elementti. Kun käyttäjä klikkaa radio nappulaa, haluan sen perää ilmestyvän tekstin ja tekstin muiden radio nappuloiden perästä katoavan. Alla olevalla esimerkillä teksti ilmestyy näkyviin, mutta miten saan esim a1 ja a3 tekstin katoamaan samalla kun a2 muuttuu näkyväksi?

JS:
function show_a1(){ document.getElementById('a1').style.display = 'block'; }
function show_a2(){ document.getElementById('a2').style.display = 'block'; }
function show_a3(){ document.getElementById('a2').style.display = 'block'; }

HTML:
<input type='radio' onclick='show_a1();' >
<span id='a1' style='display: none;'>Joku teksti</span>

<input type='radio' onclick='show_a2();' >
<span id='a2' style='display: none;'>Joku teksti</span>

<input type='radio' onclick='show_a3();' >
<span id='a3' style='display: none;'>Joku teksti</span>

12

409

    Vastaukset 12

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Lisää funktiohin muiden elementtien piilotus.

    • Anonyymi

      Taas on tullut voimaan se sääntö että ei voi opastaa antamalla koodi esimerkin, mutta avauksessa se saa tämänkin säännön mukaan olla. Voi hyvä tavaton näitä suomi24 moderoijia, täysiä pölvästejä, ei mitään järkeä niitten tekemisissä.

      • Anonyymi

        Pitäisivät nyt hitto mistä tahansa säännöstä kiinni, ainakin kaksi vuorokautta, eihän tästä tule mitään että joka viestille luodaan omat säännöt. Tämä sivuston rassaaja kuubaan täältä sotkemasta. Kyllä ärsyttää tämä mielivaltainen ylläpito johon on pakko alistua, pistäkää ihmeessä joku vastaava sivusto pystyy, että täältä pääsee pois.


      • Anonyymi kirjoitti:

        Pitäisivät nyt hitto mistä tahansa säännöstä kiinni, ainakin kaksi vuorokautta, eihän tästä tule mitään että joka viestille luodaan omat säännöt. Tämä sivuston rassaaja kuubaan täältä sotkemasta. Kyllä ärsyttää tämä mielivaltainen ylläpito johon on pakko alistua, pistäkää ihmeessä joku vastaava sivusto pystyy, että täältä pääsee pois.

        Jaa, ihmettelinkin kun seikkaperäinen selitykseni koodeineen katosi kuin tuhka tuuleen!


      • Anonyymi
        0sm0 kirjoitti:

        Jaa, ihmettelinkin kun seikkaperäinen selitykseni koodeineen katosi kuin tuhka tuuleen!

        Arvaa montako minulta on viety, samalla tavalla, joskus saa olla, ja sitten taas ei. Ja juuri näissä, johon on aikaa tuhlannut eniten tuo tarpeeton poistaminen eniten vituttaa.

        Muuten nytkin harmitti kun palasin tähän ketjuun vain kopioidakseni sen testi sivulle aikeenani testata toimiiko, ja sitten huomasin että eihän sitä ole. Vaikutti hyvältä kohteelta opiskella JavaScript alkeita.


    • Anonyymi

      Jokaisen pitäisi nostaa "älämölön" näistä turhista poistoista, niin muutkin tulisi tietoiseksi ettei vaan kannata tuhlata aikaa oikeisiin ohjeisiin. Jos tästä uskaltaa vetää johtopäätöksiä niin avaus saa nykyään sisältää JavaScript kysymyksen ja kysymykseen liittyvän JavaScript koodin, mutta vastaus ei.

    • Anonyymi

      Jos tämmöinen on sääntöjen vastaista, niin ne säännöt pitäisi asettaa käyttäjien nähtäväksi.

    • Koodit voi laittaa esim JS-Fiddleen. Siellä on helppo testaillakin.

      Minä tein tällaisen: https://jsfiddle.net/v39u42Lt/
      Muokkasin vähän tuota HTML:ääkin (radioihin sama name-attribuutti, niin ovat samaa ryhmää (niin ilmeisesti halutaan) ja br:t väliin, niin radiot ei hypähtele, kun toinen valitaan ja teksti tulee väliin).

      Refaktoroin tekstin näyttämisen ja muiden piilottamisen funktioon showText(ind), jolle annetaan parametrinä se monesko inputti (ja span:ni) on kyseessä.

      • Anonyymi

        Sait sen näyttämään niiiiin vaikealta, että vaihdan kiinnostuksen kohdetta Pythoniin. Se 0sm0:n poistettu oli helpon näköinen juttu.


      • Anonyymi kirjoitti:

        Sait sen näyttämään niiiiin vaikealta, että vaihdan kiinnostuksen kohdetta Pythoniin. Se 0sm0:n poistettu oli helpon näköinen juttu.

        Olisko tämä helpomman näkönen: https://jsfiddle.net/xz5h2cr3/
        Mutta tässä tulee paljon toistoa. Varsinkin jos inputteja on vielä enemmän tai jopa niin ettet tiedä kuinka monta niitä tulee olemaan. Silloin silmukka on ainoa ratkaisu.

        Tuosta edellisestä ratkaisustani:
        - entries() on vähän niinkuin Pythonin enumerate, se antaa taulukosta (tai taulukkomaisesta objektista, jollainen document.querySelectorAll:n palaute on) samalla kertaa indeksin ja alkion.

        -ternääri-operaattori A?B:C vastaa rakennetta if (A) {B} else {C} ja se antaa sen arvon, kumpi suoritettiin A vai B.
        Eli
        (i===ind)?'inline-block':'none'
        on 'inline-block', jos i on yhtä kuin ind ja muuten se on 'none'.

        Kokeile vielä itse toteuttaa silmukkaratkaisu. Älä anna periksi!


      • Anonyymi
        minkkilaukku kirjoitti:

        Olisko tämä helpomman näkönen: https://jsfiddle.net/xz5h2cr3/
        Mutta tässä tulee paljon toistoa. Varsinkin jos inputteja on vielä enemmän tai jopa niin ettet tiedä kuinka monta niitä tulee olemaan. Silloin silmukka on ainoa ratkaisu.

        Tuosta edellisestä ratkaisustani:
        - entries() on vähän niinkuin Pythonin enumerate, se antaa taulukosta (tai taulukkomaisesta objektista, jollainen document.querySelectorAll:n palaute on) samalla kertaa indeksin ja alkion.

        -ternääri-operaattori A?B:C vastaa rakennetta if (A) {B} else {C} ja se antaa sen arvon, kumpi suoritettiin A vai B.
        Eli
        (i===ind)?'inline-block':'none'
        on 'inline-block', jos i on yhtä kuin ind ja muuten se on 'none'.

        Kokeile vielä itse toteuttaa silmukkaratkaisu. Älä anna periksi!

        No nyt se on jo ymmärrettävissä täysin, ja jotain tuotahan se turhaan poistettu 0sm0:n koodikin oli. Kopioin siitä huolimatta omalle sivulle, vaikka tuo testaaminen tuollakin onnistui.


    Ketjusta on poistettu 1 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Venäjä alkaa iskemään Suomen politiikkaan.

      Tässä on valtion ja koko länsiliiton päämiehet varoitelleet, että Venäjä alkaa talven aikana taas iskemään hybridisesti.
      Sinkut
      198
      1171
    2. Ajattelitko ikinä pyytää anteeksi?

      Tiedät kyllä mistä.
      Ikävä
      80
      747
    3. Muistelen lämmöllä

      Se oli vaikein päätös, jonka olen joutunut tekemään. En pidä valehtelusta, mutta näin sait päätöksen asioille. Rakasti
      Ikävä
      48
      712
    4. Hallituksen järjestämä spektaakkeli tuo vessanpyttykeissi

      Että olisi kymmenien kansanedustajien kodeissa käyty ihan tuosta vaan, eikä kukaan kansanedustaja kerro niin käyneen, va
      Maailman menoa
      191
      612
    5. Uskon, että saataisiin kaikki selvitettyä

      Mutta yhteys on jäissä, minä olen jäässä, enkä osaa tai uskalla enää lähestyä. Se vaan on niin. Naiselta Jos ei ole hyvä
      Ikävä
      45
      611
    6. Tunnistan mun rakkaan

      Kirjoituksen heti kun se on täällä. Mä vaan tiedän sen ja tunnen 🤗
      Ikävä
      81
      601
    7. Sysmän "ilon päivä"

      Ja taas palaa hirveä määrä verorahoja, ihan turhaan soopaan. Eikö nämä jotka kuntapolitiikassa valittavat ja tuhoaa vaan
      Sysmä
      45
      591
    8. Miten oletkin noin

      osaamaton kaikin tavoin :)
      Ikävä
      39
      559
    9. Odotan tosi paljon et nähdään uudelleen

      Sinussa on piirteitä, jotka sai kiinnostumaan.
      Ikävä
      23
      553
    10. Tyrkytät ittees liian

      tasokkaille :)
      Ikävä
      46
      550
    11. Pakko myöntää mies

      En mä aina ihan rehellinen sulle ollut
      Ikävä
      106
      550
    12. Teinipersu Bergbom lupasi ensimmäisenä euron bensaa

      Teinipersu julkaisi Tiktok-videonsa marraskuussa 2021. Videolla Bergbom viittaa bensan hintoja esittelevään kylttiin ja
      Maailman menoa
      291
      531
    13. Jos olen aiheuttanut pahaa, pyydän anteeksi

      Jos olen omalla kirjoittelullani aiheuttanut täällä jollekin pahaa mieltä tai sotkenut asioita, niin pyydän sitä anteeks
      Ikävä
      64
      509
    14. Onko se loukkaavaa jos pelkkä seksi kiinnostaa?

      En tiedä olisiko meillä muuta yhteistä edes. En kyllä oikein osaa nähdä meitä menemässä naimisiin, paitsi ehkä jossain U
      Ikävä
      47
      504
    15. Vaihdevuodet ja psykoottinen käytös

      Estrogeenilla on suora yhteys aivojen välittäjäaineisiin, erityisesti serotoniiniin, joka säätelee mielialaa, impulssiko
      Suomussalmi
      48
      497
    16. Joka ilta mietin

      sua❤️Mitä teet, missä meet? Kaipaatko yhtään? Yön tullen toivotan mielessäni sulle hyvää yötä ja aamuisin huomenet. Joka
      Ikävä
      27
      493
    17. Luottamus

      Luotan vain siihen mitä tapahtuu IRL. Anonyymipalstan vihjailut eivät merkitse minulle mitään.
      Ikävä
      91
      456
    18. Miltä tuntuu vanhempi nainen olla

      Pihkassa huomattavasti nuorempaan kolliin joka on uskollinen ja kiltti ja tottelee joka asiaa ja tykkää pussailla ja pan
      Ikävä
      70
      452
    19. Timo Vornanen.

      On siinäkin yksi täystampio. Eipä ihme, että persukannattajat sen eduskuntaan äänestikin.
      Maailman menoa
      32
      451
    20. Riitastako pelastaja

      Riitta jätti hakemuksen. Hyvä niin. On ainakin yksi mistä ottaa. Pertsa ei taida aikuistua koskaan ja Pekka hoiteli silt
      Kemijärvi
      32
      441
    Aihe