繁体   English   中英

jQuery AJAX发布不适用于我的PHP代码

[英]jQuery AJAX post not working with my php code

我正在尝试进行动态选择。 您应该首先选择州(id =“ edo”),然后选择城市(id =“ municipio”)。 两者都从我的数据库中检索信息; 但是,当我尝试让城市选择通过AJAX通过邮寄动态响应时,没有任何变化。 我直接运行我的页面getMunicipio.php ,得到的是注意:第9行的C:\\xampp\\htdocs\\nthlife\\js\\getMunicipio.php未定义索引:id_estado

你能帮助我吗? 这是我的JavaScript代码。

$(document).ready(function (){
  $("#edo").change(function () {
    $("#edo option:selected").each(function () {
      id_estado = $(this).val();
      //alert(id_estado);
      $.post("getMunicipio.php", { id_estado: id_estado }, function(data){
        $("#municipio").html(data);
      });            
    });
  })
});

这是getMunicipio.php中的代码

include "../includes/conexionbd.php";

//var_dump($_POST);

//if (isset($_POST['id_estado']))
{
    $id_estado = $_POST['id_estado'];

    $queryM = "SELECT * FROM municipios WHERE estado = '".$id_estado."'";
    $resultadoM = mysqli_query($conexion, $queryM) or die(mysqli_error($conexion));

    $check = mysqli_num_rows($resultadoM);
    $html= "<option value='0'>" . $check . "</option>";

    while($rowM = mysqli_fetch_array($resultadoM))
    {
        $html.= "<option value='".$rowM['id_municipio']."'>".$rowM['nombre_municipio']."</option>";
    }

    echo $html;
}

谢谢。

确实需要查看您的HTML,但是从发布的内容来看,JavaScript端应该可以正常工作。

您在var_dump($_POST)看到什么? 直接运行页面可能会引发错误,因为未设置POST变量,并且已将if (isset($_POST['id_estado']))条件注释掉。 您应该将条件更改为if (!empty($_POST['id_estado'])) ,就好像表单使用空值发布该表单时,该表单仍将被设置,但它将为空。

您正在使用双引号创建字符串,因此无需转义变量,因为PHP会解析它们。

这些:

$html= "<option value='0'>" . $check . "</option>";
$queryM = "SELECT * FROM municipios WHERE estado = '".$id_estado."'";

可以成为这些:

$html= "<option value='0'>$check</option>";
$queryM = "SELECT * FROM municipios WHERE estado = '$id_estado'";

但是,不能在双引号字符串中使用单引号数组键。

更改此:

$html.= "<option value='".$rowM['id_municipio']."'>".$rowM['nombre_municipio']."</option>";

对此:

$html.= "<option value='{$rowM['id_municipio']}'>{$rowM['nombre_municipio']}</option>";

或这个:

$html.= "<option value='$rowM[id_municipio]'>$rowM[nombre_municipio]</option>";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM