Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用json和ajax从数据库检索下拉列表选项时出现问题_Javascript_Php_Jquery_Json_Ajax - Fatal编程技术网

Javascript 使用json和ajax从数据库检索下拉列表选项时出现问题

Javascript 使用json和ajax从数据库检索下拉列表选项时出现问题,javascript,php,jquery,json,ajax,Javascript,Php,Jquery,Json,Ajax,我有一系列的3个下拉列表,其中第二个和第三个值的变化取决于在上一个列表中选择的内容。但目前,这些值并没有出现在移动版本中,而在完整的桌面版本中,一切正常。我有这部分代码。对不起,有点乱 // JAVASCRIPT function limpiar(combo) { var combo2 = document.getElementById(combo); while(combo2.length > 0) { c

我有一系列的3个下拉列表,其中第二个和第三个值的变化取决于在上一个列表中选择的内容。但目前,这些值并没有出现在移动版本中,而在完整的桌面版本中,一切正常。我有这部分代码。对不起,有点乱

// JAVASCRIPT

        function limpiar(combo)
    {
    var combo2 = document.getElementById(combo);
       while(combo2.length > 0)
       {
          combo2.remove(combo2.length-1);
       }
    }
    function llenar(json, combo)
    {
        var combo2 = document.getElementById(combo); 
        combo2.options[0] = new Option('Todos', 'Todos');
        for(var i=0;i<json.length;i++){
            combo2.options[combo2.length] = new Option(json[i].data, json[i].id);
        }
    }
    function cambmar()
    {
        var combo0 = document.getElementById("idmod");
        combo0.options[0] = new Option('Todos', 'Todos');
        var combo1 = document.getElementById("idcat"); 
        var combo2 = document.getElementById("idmar"); //con jquery: $("#"+combo2)[0];
        limpiar(combo2.id);
        limpiar(combo0.id);
        if(combo1.options[combo1.selectedIndex].value != "")
        {
            $.ajax({type: 'get', dataType: 'json', url: 'mar.php', data: {valor: combo1.options[combo1.selectedIndex].value},success: alert("hola");  });
        }
    }

    function cambmod()
    {
        var combo0 = document.getElementById("idcat");
        var combo1 = document.getElementById("idmar"); 
        var combo2 = document.getElementById("idmod"); //con jquery: $("#"+combo2)[0];
        limpiar(combo2.id);
        if(combo1.options[combo1.selectedIndex].value != "")
        {
        $.ajax({type: 'get', dataType: 'json', url: 'mod.php', data: {valor: combo0.options[combo0.selectedIndex].value, mar: combo1.options[combo1.selectedIndex].value}, success: function(json){ llenar(json, combo2.id);}});
    }
}
//JAVASCRIPT
功能limpiar(组合)
{
var combo2=document.getElementById(组合);
而(combo2.length>0)
{
combo2.删除(combo2.长度-1);
}
}
函数llenar(json,组合)
{
var combo2=document.getElementById(组合);
combo2.options[0]=新选项('Todos','Todos');
对于(var i=0;i

success:
需要是一个函数。不能做
success:alert(“hola”)
将是
success:function(serverResponse){alert(“hola”)}
成功:需要是一个函数。不能做
成功:alert(“hola”)
将是
success:function(serverResponse){alert(“hola”)}
    <div  class="container-fluid">
            <div  style="text-align: center;"  class="boxCategoria">Categoria:</div>            
                <select name="cat" class="categoria" id="idcat" onchange="cambmar()">
                        <option value="0">Todos</option>
                        <option value="1">Automóviles</option>
                        <option value="2">Camionetas</option>
                        <option value="3">Motocicletas</option>
                    </select>
   </div>

              <div  class="container-fluid">
                <div  style="text-align: center;"  class="boxMarca">Marca:</div>

                    <select  name="mar"  class="marca"  id="idmar"  onchange="cambmod()">
                        <option  value="Todos">Todos</option>
                    </select>

                 </div>

                <div  class="container-fluid">
                <div  style="text-align: center;"  class="boxModelo">Modelo:</div>

                    <select name="mod" class="modelo" id="idmod">
                        <option value="Todos">Todos</option> 
                    </select>
                </div>
<?php
   $valor = $_GET['valor'];
   include("conexion.php");

   $CmdSQL="SELECT DISTINCT mar FROM autos WHERE cat=$valor";
   $runquery=mysql_query ($CmdSQL,$conecta);
   if (mysql_num_rows($runquery)!=0)
   {
      if (mysql_num_rows($runquery)!=0)
      {
         while($marc=mysql_fetch_row($runquery))
         {
            $_arreglo[] = array('id' => $marc[0], 'data' => $marc[0]);  
         }
      }
      mysql_close();
      echo json_encode($_arreglo);
   }
?>