将项目填充到 Select using jQuery ajax json, php.


populating items into a Select using jQuery ajax json, php

简单的代码,用于使用 jQuery ajax json, php 将项目填充到 Select 中在第一个菜单更改时,它必须对水果变量进行 ajax 调用.php以获取 JSON 数组并创建第二个菜单主页

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <title>Load JSON data with jQuery, PHP and MySQL</title>
    <link rel="stylesheet" type="text/css" href="/css/main.min.css?1319445416"  />
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    $(document).ready(function() {
         $('#mark').change(function() {
             $.get("fruit-varities.php",
                {'idcategory' : idc },
                function(data){
                    var select = $('#series').empty();
                    $.each(data.values, function(i,item) {
                        select.append( '<option value="'
                                             + item.fruit_id
                                             + '">'
                                             + item.name
                                             + '</option>' ); 
                    });
                }, "json");
    });
    });
</script>
    </head>
    <body>
    <form>
    <select id="mark">
      <option value="">--</option>
      <option value="bmw">BMW</option>
      <option value="audi">Audi</option>
    </select>
    <select id="series">
    </select>
    <div id="view">
    </div>
    </form>
    </body></html>

这是水果品种.php

<?php
if(isset($_GET['idcategory'])){
$item = Array(
    Array
        (
            "fruit_id" => "1",
            "name" => "Apple",
            "variety" => "Red Delicious"
        )
);
}
echo json_encode(item);
?>

这是行不通的,不知道为什么?对我来说似乎一切都很好,但我不知道问题是什么

您的页面中没有" idc"变量,但您将其用作 Ajax 请求参数的值。它不满足参数应该具有什么值'idcategory'(通过分析您的 php 脚本),因此您可以将{'idcategory' : idc }替换为 {'idcategory' : ''} .