Javascript 将python列表项填充到下拉列表选择器中
我对烧瓶很陌生。 我有一个python函数,可以从数据库中检索年份列表,但我不能循环遍历该列表并填充到下拉选择器中 我正在使用ajax,但不确定如何使python列表成为javascript的json格式,以填充下拉框中的元素。我现在所做的是将整个列表作为一个选项返回 app.py:Javascript 将python列表项填充到下拉列表选择器中,javascript,python,json,ajax,flask,Javascript,Python,Json,Ajax,Flask,我对烧瓶很陌生。 我有一个python函数,可以从数据库中检索年份列表,但我不能循环遍历该列表并填充到下拉选择器中 我正在使用ajax,但不确定如何使python列表成为javascript的json格式,以填充下拉框中的元素。我现在所做的是将整个列表作为一个选项返回 app.py: @app.route('/getyear', methods = ['POST']) def getyear(): plant = request.form['plant'] if plant:
@app.route('/getyear', methods = ['POST'])
def getyear():
plant = request.form['plant']
if plant:
year_list = mymodule.get_years.tolist()
return jsonify({'yearList': year_list })
js文件:
function showBudgetYear() {
$.ajax({
data: {
plant: $("#plant-selector").val()
},
type: "POST",
url: "/getyear",
beforeSend: function() {
$("#loading").show();
},
complete: function() {
$("#loading").hide();
}
}).done(function(data) {
$("#budget-dropdown").append(`<option value="${data.yearList}"> ${data.yearList} </option>`);
});
}
函数showBudgetYear(){
$.ajax({
数据:{
工厂:$(“#工厂选择器”).val()
},
类型:“POST”,
url:“/getyear”,
beforeSend:function(){
$(“#加载”).show();
},
完成:函数(){
$(“#加载”).hide();
}
}).完成(功能(数据){
$(“#预算下拉列表”).append(`data.yearList}`);
});
}
index.html:
<select id="budget-dropdown" disabled="disabled">
<option value="" selected disabled>select year</option>
<option>year 1</option>
</select>
选择年份
第一年
我在.done部分找到了一种循环对象的方法
.done(function(data) {
for(var i=0 ; i<data.yearList.length; i++){
$("#budget-dropdown").append(`<option value="${data.yearList[i]}"> ${data.yearList[i]} </option>`);
}
.done(函数(数据){
对于(var i=0;i