Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.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
Jquery 如何使用django和ajax在dropdownlist中显示结果_Jquery_Html_Ajax_Django_Dropdownbox - Fatal编程技术网

Jquery 如何使用django和ajax在dropdownlist中显示结果

Jquery 如何使用django和ajax在dropdownlist中显示结果,jquery,html,ajax,django,dropdownbox,Jquery,Html,Ajax,Django,Dropdownbox,我有3个独立的投币点,位于乡村城市路 如果国家/地区是从数据库中预先填充的,并且根据第一个国家/地区的选择,第二个国家/地区将显示相关城市 问题是,当用户选择一个国家时,城市已被填充,但道路显示未定义 然而,在cmd中,它会显示正确的答案 models.py 从django.db导入模型 类道路模型。模型: 名称=型号。CharFieldmax_长度=50 city=models.ForeignKeyCity,在_delete=models.CASCADE上,相关的_name='roads' 定

我有3个独立的投币点,位于乡村城市路

如果国家/地区是从数据库中预先填充的,并且根据第一个国家/地区的选择,第二个国家/地区将显示相关城市

问题是,当用户选择一个国家时,城市已被填充,但道路显示未定义

然而,在cmd中,它会显示正确的答案

models.py

从django.db导入模型 类道路模型。模型: 名称=型号。CharFieldmax_长度=50 city=models.ForeignKeyCity,在_delete=models.CASCADE上,相关的_name='roads' 定义自身: 返回strself.name 类Citymodels.Model: 名称=型号。CharFieldmax_长度=50 country=models.ForeignKeyCountry,在_delete=models.CASCADE上,相关的_name='cities' 定义自身: 返回strself.name 类别Countrymodels。型号: 名称=型号。CharFieldmax_长度=50 定义自身: 返回strself.name home.html

$document.readyfunction{ $'SelectCountries'。更改功能{ var optionSelected=$this.findoption:selected; var valueSelected=optionSelected.val; var country_name=options selected.text; 数据={'cnt':国家名称}; $.ajax{ 类型:GET, url:“/getCity”, //数据:JSON.stringifydata, 数据:数据, 成功:结果{ console.logresult; $selectcities选项。删除; 对于var i=result.length-1;i>=0;i-{ $selectcities.append+result[i].name+; }; }, }; }; $'SelectCities'.changefunction{ var optionSelected=$this.findoption:selected; var valueSelected=optionSelected.val; var city_name=options selected.text; 数据={'ct':城市名称}; $.ajax{ 类型:GET, url:“/getRoads”, //数据:JSON.stringifydata, 数据:数据, 成功:结果{ console.logresult; $selectroads option.remove; 对于var i=result.length-1;i>=0;i-{ $selectroads.append+result[i].Vil+; }; }, }; }; }; {国家/地区%中的项目为%} {{item.name} {%endfor%} views.py

从django.shortcuts导入渲染,重定向 从map.models导入* 将json作为simplejson导入 从django.http导入HttpResponse 在这里创建您的视图。 def索引请求: countries=Country.objects.all 印刷国家 返回renderrequest,'home.html',{'countries':countries} def getCityrequest: 如果request.method=='GET'和request.is_ajax: country\u name=请求。POST['country\u name'] 国家/地区名称=请求。获取['cnt'] country\u name=request.GET.GET'cnt',无 打印国家/地区名称,国家/地区名称 结果_集=[] 所有城市=[] 答案=strcountry\u name[1:-1] 打印“答案=”,回答 所选国家=国家。对象。getname=答案 打印所选国家/地区名称、所选国家/地区 所有城市=选定的国家/地区.cities.all 印刷城市为:,所有城市 对于所有城市中的城市: 打印城市名称,city.name 结果_set.append{'name':city.name} 返回HttpResponsesimplejson.dumpsresult\u集,content\u type='application/json' 返回JsonResponseresult_集合,状态=200 其他: 返回重定向“/” def getRoadsrequest: 如果request.method=='GET'和request.is_ajax: city\u name=request.GET.GET'ct',无 打印城市名称,城市名称 结果_集=[] 所有道路=[] 答案=标准名称[1:-1] 答案=标准名称 打印“答案=”,回答 所选城市=城市。对象。getname=答案 打印所选城市名称、所选城市 所有道路=选定的城市道路.all 打印道路为:,所有道路 对于所有_道路中的道路: 打印道路名称,道路名称 结果_set.append{'name':road.name} 返回HttpResponsesimplejson.dumpsresult\u集,content\u type='application/json' 返回JsonResponseresult_集合,状态=200 其他: 返回重定向“/” 打字错误


既然已经写了同样的答案,似乎OP的问题应该得到解决:!一个愚蠢的错误我没有用result[i].name替换result[i].Vil
$("#selectroads").append('<option>'+ result[i].name +'</option>');