这是一段php代码如何在页面做成级联显示啊选moto的时候,出现moto的机型
选nokia的时候,出现nokia的机型

解决方案 »

  1.   


    <?php$sys= array(3) {
      ["moto"]=>
      array(2) {
        [0]=>
        string(4) "1200"
        [1]=>
        string(4) "3300"
      }
      ["nokia"]=>
      array(2) {
        [0]=>
        string(3) "N73"
        [1]=>
        string(3) "N96"
      }
      ["sony"]=>
      array(1) {
        [0]=>
        string(5) "K508C"
      }
    }
    $jsonTemp = json_encode($sys);?>
    <script language='javascript'>
    var tempsys = new Array();
    tempsys = <?php echo $jsonTemp;?>;
    //document.write(tempsys);

    function mm()
    {
    var mmname = "<select name='mm' id='mm' onchange='alert(tempsys[this.value])'>";
    for(var i in tempsys)
    {
    mmname +=  "<option value="+i+">"+i+"</option>";
    }
    mmname += "</select>";
    document.getElementById('mm').innerHTML = mmname;
    }

    for(var i in tempsys)
    {
    var sys = tempsys[i];
    document.write(sys.length);  //这里就出错了。。
    }
           想做成级联的,选手机类型,得到相应的手机型号
    </script>
    <body onload="mm()"> <div id='mm' name='mm'>
    </div>
    <div id='mx' name='mx'>
    </div>
    </body>
      

  2.   

    参照你的写法写的.<?php
    $sys= array(
      "moto"  => array("1200","3300"),
      "nokia" => array( "N73","N96"),
      "sony"=> array("K508C")
    );
    $jsonTemp = json_encode($sys);
    ?>
    <script language='javascript'>
        var tempsys = new Array();
        tempsys = <?php echo $jsonTemp;?>;
        //document.write(tempsys);
        
        function mm()
        {
            var mmname = "<select name='mm' id='mm' onchange='selchange(tempsys[this.value])'>";
            for(var i in tempsys)
            {
                mmname +=  "<option value="+i+">"+i+"</option>";
            }
            mmname += "</select>";
            document.getElementById('mm').innerHTML = mmname;
        }
        
        function selchange(sObj)
        {
         var sonname = "<select name='son' id='son'>";
         for(var i in sObj)
         {
         sonname += "<option value="+sObj[i]+">" + sObj[i] + "</option>";
         }
         sonname += "</select>";
          document.getElementById('mx').innerHTML = sonname;
        }
    </script>
    <body onload="mm()"> 
    <div id='mm' name='mm'>
    </div>
    <div id='mx' name='mx'>
    </div>
    </body>