AJAX-用PHP脚本的结果替换HTML选择菜单
我的表格上有两个选择菜单:类型和类别。当用户从“类型”菜单中选择某个内容时,我希望它执行一个PHP脚本,该脚本查询数据库并返回所选类型的匹配类别列表,供用户在“类别”菜单中选择 以下是我的两个选择菜单的HTML:AJAX-用PHP脚本的结果替换HTML选择菜单,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我的表格上有两个选择菜单:类型和类别。当用户从“类型”菜单中选择某个内容时,我希望它执行一个PHP脚本,该脚本查询数据库并返回所选类型的匹配类别列表,供用户在“类别”菜单中选择 以下是我的两个选择菜单的HTML: <div class="form-group"> <label for="title" class="control-label col-sm-3" >Type</label> <div class="i
<div class="form-group">
<label for="title" class="control-label col-sm-3" >Type</label>
<div class="input-group col-xs-8">
<select class="form-control" name="type" id="type">
<option value="" selected></option><option value="Business">Business</option><option value="Commercial">Commercial</option><option value="Commercial Land">Commercial Land</option><option value="Land">Land</option><option value="Rental">Rental</option><option value="Residential">Residential</option><option value="Rural">Rural</option> </select>
</div>
</div>
<div class="form-group">
<label for="title" class="control-label col-sm-3" >Category</label>
<div class="input-group col-xs-8" class=""id="categoryList">
<select class="form-control" name="category" id="category">
<option value="" selected></option> </select>
</div>
</div>
它确实调用了PHP脚本,但是类别选择菜单没有得到更新。查看控制台,我发现以下错误:
SyntaxError: JSON Parse error: Unrecognized token '<'
我觉得我已经很接近了,但无法找出问题所在。调用json.parse()时,您的数据需要进行json编码 在getPropertyCategories.php中,去掉以html打印类别的代码,并将查询结果编码为json:
$categories = json_encode($queryForTypeResult);
设置标题和返回数据:
header('Content-Type: application/json');
return $categories;
调用json.parse()时,需要对数据进行json编码 在getPropertyCategories.php中,去掉以html打印类别的代码,并将查询结果编码为json:
$categories = json_encode($queryForTypeResult);
设置标题和返回数据:
header('Content-Type: application/json');
return $categories;
您的PHP脚本是否返回原始HTML?正是我要问的,通常会抛出此错误,因为您试图解析HTML。是的,您是对的-如果成功,它将返回HTML以显示选择菜单。对此有什么建议吗?您的PHP脚本是否返回原始HTML?这正是我要问的,通常会抛出此错误,因为您试图解析HTML。是的,您是对的-如果成功,它将返回HTML以显示选择菜单。有什么建议吗?