2013-07-04 9 views
5
<style type="text/css"> 
    form select { 
     display:none; 
    } 
    form select.active { 
     display:block; 
    } 
    </style> 
    <script type="text/javascript"> 
    window.onload = function() { 
     var allElem = document.getElementsByName("sl"); 
     for (i = 0; i < allElem.length; i++) { 
      allElem[i].addEventListener('change', toggleDisplay); 
     } 
    } 
    function toggleDisplay(e) { 
     var id = 's' + this.value; 
     var currentSelect = document.getElementsByClassName("active")[0]; 
     if (currentSelect) { 
      currentSelect.className = ""; 
     } 
     document.getElementById(id).className = "active"; 
    }  
    </script> 
    </head><body> 
    <form action="check_a.php"> 
    <h2><b>Source: </b></h2> 
    <input type="radio" name="sl" value="c">Central</input> 
    <input type="radio" name="sl" value="h">Eastern</input> 
    <input type="radio" name="sl" value="w">Western</input> 

    <select id="sc" name="sc"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
    </select> 

    <select id="sh"> 
    <option value="3">3</option> 
    <option value="4">4</option> 
    </select> 

    <select id="sw"> 
    <option value="5">5</option> 
    <option value="6">6</option> 
    </select> 
    <input type="submit" name="submit" value="submit"/> 

    </form></body></html> 

es gibt einen radiobutton, dessen wert die spezifische auswahlbox anzeigt, die mit javascript erfolgt. Der Wert des Tags muss an PHP-Code übergeben werden. Wie kann ich den ausgewählten Optionswert an PHP übergeben?pass ausgewählter optionswert von wählen zu php

+1

Der obige Code übergibt die ausgewählten Optionen an PHP, wenn das Formular gesendet wird. Welches besondere Problem hast du? – Jim

Antwort

8

Können Sie nicht einfach alle select Elemente auf den gleichen Namen setzen?

<select id="sc" name="tagvalue"> 
    <option value="1">1</option> 
    <option value="2">2</option> 
</select> 

<select id="sh" name='tagvalue'> 
    <option value="3">3</option> 
    <option value="4">4</option> 
</select> 

<select id="sw" name='tagvalue'> 
    <option value="5">5</option> 
    <option value="6">6</option> 
</select> 

Dann nehmen Sie einfach den Wert $_POST['tagvalue'].

+0

Sie hatten Recht. es war ein dummer fehler .. trotzdem vielen dank! –

+0

Keine Sorge, willkommen in SO. Wenn eine Antwort Ihnen geholfen hat, Ihr Problem zu lösen, schätzt die Gemeinschaft, wenn Sie es als "akzeptiert" markieren. ;) – Ben

+0

Ich habe versucht, für alle Select-Tags denselben Namen zu vergeben, aber der Optionswert von nur einem Select-Tag wurde an die PHP-Datei gesendet, auch wenn die Optionen der Optionsfelder geändert wurden. –