Python 如何在django中动态获取dropdownlist中的数据?
我有两个下拉列表城市下拉列表和地区下拉列表 这个项目正在python+Django框架工作 在django中使用以下概念时,它不起作用,并在警报窗口中给出错误 所以我的问题是,当我从第一个dropdownlist中选择任何城市时,第二个dropdownlist数据将使用ajax从数据库中更新。也许这里Ajax不起作用。我不擅长ajax,所以请阅读下面的代码并解决我的问题 多谢各位 在index.html中Python 如何在django中动态获取dropdownlist中的数据?,python,ajax,django,Python,Ajax,Django,我有两个下拉列表城市下拉列表和地区下拉列表 这个项目正在python+Django框架工作 在django中使用以下概念时,它不起作用,并在警报窗口中给出错误 所以我的问题是,当我从第一个dropdownlist中选择任何城市时,第二个dropdownlist数据将使用ajax从数据库中更新。也许这里Ajax不起作用。我不擅长ajax,所以请阅读下面的代码并解决我的问题 多谢各位 在index.html中 <div class="input-field col l2 s12 m12">
<div class="input-field col l2 s12 m12">
<select id="ddlcity" name="ddlcity">
<option value="None" selected disabled>Choose City</option>
{% for i in allcities %}
<option value="{{ i.id }}">{{ i.city_name }}</option>
{% endfor %}
</select>
<label>Select City</label>
</div>
<div class="input-field col l3 s12 m6">
<select id="ddlarea" name="ddlarea">
<option value="" disabled selected>Choose your area</option>
</select>
<label>Your Selected Area</label>
</div>
$(document).ready(function () {
$('#ddlcity').change(function () {
var data_ = $('#ddlcity').val();
$.ajax({
type: "get",
url: '/get/areadata/' + data_ + '/',
data: data_,
success: function (data) {
$('#ddlarea').empty();
$.each(data.d, function (key, value) {
$('#ddlarea').append($("<option></option>").val(value.AreaID).html(value.AreaName));
});
},
failure: function (response) {
alert(response.d);
},
error: function (jqXHR, textStatus, errorThrown) {
alert(textStatus, errorThrown);
}
});
});
});
In views.py
def getarea(request, cityID):
id = Area.objects.filter(city_id=cityID)
id = id.all().order_by('area_name')
return render(
request, 'files/index.html',
context_instance=RequestContext(request, { 'allarea': id }))
通过在浏览器的“网络”选项卡中跟踪请求,您可以显示您遇到了什么错误吗?当我选择任何城市,然后向流行音乐节目发出警报并给出“错误”文本时,您是否尝试手动点击REST URL以查看返回的内容,以及您的JS是否期望返回的内容?您应该为AJAX请求返回JSON/XML响应,看起来您正在渲染一个模板。也许这就是导致错误的原因。
def getarea(request, cityID):
id = Area.objects.filter(city_id=cityID)
id = id.all().order_by('area_name')
return render(
request, 'files/index.html',
context_instance=RequestContext(request, { 'allarea': id }))