javascript - 使用 Ajax 根据另一个下拉选项填充下拉列表

标签 javascript php jquery mysql ajax

我需要根据另一个 ID 选择一个 ID。 我自己做了一些东西,但它不起作用,所以我发布了代码,也许我有问题。选择第一个选项车辆,然后在第二个选项中选择我选择的车辆型号。 谢谢!

//The config file

<?php

$host = 'localhost';         
$utilizator = 'stud';         
$parola = 'stud';         
$numebd = 'autodealer';      

$conn = mysql_connect($host, $utilizator, $parola);
if (!$conn) { echo '<h4>Connected!</h4>'; }

if (!mysql_select_db($numebd, $conn)) { 
   echo '<h4>Couldnt connect database : '. mysql_errno(). ' : '. mysql_error().'</h4>'; 
}

mysql_set_charset('utf8', $conn);
?>


//The HTML code

<h2><strong>Vehicle</strong> data</h2>
    <div class="select_wrapper">
    <form action="" method="post" name="anunt" id="f_anunt">
        <label><span>* </span><strong>Manufacturer:</strong></label>
        <select class="select_5" name="marca" id="marca">                           
            <?php
                $result = mysql_query("SELECT id_marca, denumire FROM marci ORDER BY ordine");
                while($row = mysql_fetch_array($result)) {
                    echo ("<option value='".$row['id_marca']."'>".$row['denumire']."</option>");
                }
            ?>
        </select>
        </div>
        <div class="select_wrapper">
        <label><span>* </span><strong>Model: </strong></label>
            <select class="select_5" name="model" id="model">
                <?php                                   
                    $result = mysql_query("SELECT id_model, denumire FROM modele WHERE id_marca=1");
                    while ($row = mysql_fetch_array($result)) {
                        echo ("<option value='".$row['id_model']."'>".$row['denumire']."</option>");
                    }
                ?>
            </select>
        </div>

//The PHP file

<?php
include_once("config.php");

$id_marca = $_POST['id_marca'];

$sir_sql="SELECT id_model, denumire FROM modele WHERE id_marca=$id_marca ";

if ($conn())
    {               
        $result=mysql_query($sir_sql,$conn);

        while ($row = mysql_fetch_array($result))       
           echo ("<option value='".$row['id_model']."'>".$row['denumire']."</option>");

    }
    else 
        die('Comanda incorecta:<br> ' . mysql_error()); 
?>

//The Javascript code

$("#marca").change(get_model);

    function get_model(e)
{
    $.post("ajax_get_model.php",{id_marca:$(this).val()},function(data,status)
        {   
            $("#model").html(data); // pun modelele 
        });
}

最佳答案

SO 上有几篇关于此主题的帖子。请先阅读这些主题,希望这些内容会有所帮助 -

  1. Populate one dropdown list based on the selection of other dropdown list
  2. jQuery show/hide drop-down options based on another drop-down option

最后,您可以在此处查看教程,根据下拉列表选择填充下拉列表...

Tutorial Here | Demo Here

关于javascript - 使用 Ajax 根据另一个下拉选项填充下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21523652/

相关文章:

javascript - 创建列表时像在 Ranker.com 上一样创建多个项目

javascript - 如何使用 raphael.js 为每个 Angular 绘制带控制点的多边形

javascript - 禁用 html 中日历 View 的输入类

PHP 从 600MB 大文本文件中读取特定行

javascript - HTML5 内容可编辑触发器开/关

javascript - 在没有 DateJS 的情况下在 jQuery 中解析日期

c# - 如何通过事件从 UserControl 的代码后面触发 JS

php - 如何使用 php 取消设置 mongodb 中的所有记录字符串?

php - mysql中max connections取大值会影响站点性能吗?

javascript - html 输入显示不同的文本到它发布的值