sql >> Databasteknik >  >> RDS >> Mysql

Visa rullgardinsvärden för ett urval baserat på ett annat urval

Du kan lägga till en händelseavlyssnare för onChange-händelsen i selectboxen. På change-händelsen hämtar du värdet på selectboxen och skickar dess värde till servern med en ajax-begäran och hämtar värdet du vill visa i den andra selectboxen baserat på den förstas värde och visa den i den andra valrutan. Exempelkod för val av delstat baserat på val av land:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Populate City Dropdown Using jQuery Ajax</title>
<script type="text/javascript" src="http://code.jquery.com/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $("select.country").change(function(){
        var selectedCountry = $(".country option:selected").val();
        $.ajax({
            type: "POST",
            url: "process-request.php",
            data: { country : selectedCountry } 
        }).done(function(data){
            $("#response").html(data);
        });
    });
});
</script>
</head>
<body>
<form>
    <table>
        <tr>
            <td>
                <label>Country:</label>
                <select class="country">
                    <option>Select</option>
                    <option value="usa">United States</option>
                    <option value="india">India</option>
                    <option value="uk">United Kingdom</option>
                </select>
            </td>
            <td id="response">
                <!--Response will be inserted here-->
            </td>
        </tr>
    </table>
</form>
</body> 
</html>

Backend:

<?php
if(isset($_POST["country"])){
    // Capture selected country
    $country = $_POST["country"];

    // Define country and city array
    $countryArr = array(
                    "usa" => array("New Yourk", "Los Angeles", "California"),
                    "india" => array("Mumbai", "New Delhi", "Bangalore"),
                    "uk" => array("London", "Manchester", "Liverpool")
                );

    // Display city dropdown based on country name
    if($country !== 'Select'){
        echo "<label>City:</label>";
        echo "<select>";
        foreach($countryArr[$country] as $value){
            echo "<option>". $value . "</option>";
        }
        echo "</select>";
    } 
}
?>


  1. SQL Server tar bort millisekunder från datetime

  2. Textfilstruktur (tabeller)

  3. När ska jag använda array-kolumner v.s. föreningar inom räls

  4. MySql:är det möjligt att 'SUMMA OM' eller 'COUNT OM'?