Vraag & Antwoord

Webprogrammeren & scripting

Dynamsiche drop-down list mogelijk?

Anoniem
h4xX0r
3 antwoorden
  • hallo allemaal,

    Ik vroeg me af of een dynamische drop-down list mogelijk is. Wat ik bedoel is het volgende. Ik wil bij ons voetbal team een verkiezing van beste speler maken. Hiervoor moet iedereen elke week een top 3 aangeven. Dit wil ik doen met 3 drop down lists. Maar ja nou kan je natuurlijk niet iemand op de 1 2 3 plaats zetten, dus als je de 1e heb gekozen moet die persoon uit het lijstje van de 2e en 3e gehaald worden. Nou wil dit allemaal dynamisch maken, dus zonder reload van de pagina. Is dat mogelijk. Ik heb al zitten denken aan het disabelen van options met beheulp van disabled="disabled" maar dat werkt bij mij zoiezo niet. Ook heb ik geprobeer om te werken met style="display:none" maar ook dat werkt niet voor de option tag.

    Heeft iemand een idee?
  • niet de meest beste opllssing, maar dit zou kunnen:
    http://www.felgall.com/jstip22.htm
  • In plaats van [i:59e0d05765]options[/i:59e0d05765] in- of uitschakelen, zou je ook er voor kunnen kiezen om de gekozen waarden te controleren op dubbele waarden.

    Ik heb even snel een voorbeeldje in elkaar gegooid waarbij ik er gemakshalve van uit ga dat de waarden in alle selects in dezelfde volgorde staan.
    [code:1:59e0d05765]
    <script type="text/javascript">
    // controleer op dubbele waarden in een groep selects
    function containsDuplicates(containerId)
    {
    var container = document.getElementById(containerId);
    if (container == null)
    {
    alert ("ERROR: cannot find '" + containerId + "'");
    return false;
    }

    var selects = container.getElementsByTagName("SELECT");
    var i = selects.length, a = [], n;
    while (i–)
    {
    n = selects[i].selectedIndex;
    if (a.in_array(n))
    return true;

    a.push(n);
    }

    return false;
    }

    // extensie van Array met in_array functionaliteit
    Array.prototype.in_array =
    function (what)
    {
    var i = this.length;
    while(i–)
    {
    if (this[i] == what)
    return true;
    else if (this[i] instanceof Array)
    return this[i].in_array(what);
    }
    return false;
    }


    </script>

    <fieldset id="positie" style="border: none;">
    <select id="een">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    </select>

    <select id="twee">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    </select>

    <select id="drie">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    </select>

    <input type="button" onclick="alert(containsDuplicates('positie'))" value="duplicates?" />
    </fieldset>
    [/code:1:59e0d05765]

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.

Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord