我在这方面没有任何进展。非常感谢提供有关此事的任何帮助!
我有两个下拉菜单,一个是经理,一个是员工。
默认情况下,经理下拉菜单包含经理列表。
我想通过查询SQL Server数据库来使用用户在经理下拉菜单中选择的经理名称,填充员工下拉菜单中的员工姓名。
例如,如果一个人在经理下拉菜单中选择汤姆作为经理,则员工下拉菜单应该以Manager = Tom的员工姓名填充。
到目前为止,我有以下代码:
路由(我用它来查询SQL Server数据库,以根据经理名称获取员工列表):
@app.route ('/getEmployees', methods=['GET'])
def getEmployees():
engine = create_engine('mssql+pyodbc://<server name>/<DB name>?driver=SQL+Server+Native+Client+11.0')
Base = declarative_base(engine)
class Bookmarks(Base):
__tablename__ = '<table name>'
Employee = Column(String(50))
__table_args__ = {'autoload': True}
def __repr__(self):
return '{} '.format(self.Employee)
def loadSession():
metadata = Base.metadata
Session = sessionmaker(bind=engine)
session = Session()
return session
if __name__ == "__main__":
session = loadSession()
return session.query(Bookmarks).filter_by(Manager='<I want to populate this with the manager name a user selects in the Manager dropdown>')
index.html 中的管理者下拉菜单
<div class="form-group">
<select class="form-control" id="next" name="division" data-error="Required!" required>
<option value="default" disabled selected>Select something</option>
<option value="option1">Tom</option>
<option value="option2">Bob</option>
</select>
</div>
app.py中的员工下拉菜单
Employees = QuerySelectField('Employees', query_factory=getEmployees, allow_blank=True)
在index.html中
<div class="form-group" id="sel_user">
{{ render_field(form.Employees,class="form-control", required="required") }}
</div>
我正在使用jQuery和ajax来获取用户在经理下拉框中选择的经理名称,然后对其进行一些操作。
$(document).ready(function(){
$("#next").change(function() {
var Manager=($('#next option:selected').text());
console.log(Manager);
$.ajax({
url: "/getEmployees",
type: 'GET',
contentType: 'application/json',
dataType: 'json',
// not sure what to do next..?
});
});
});
当用户从经理下拉菜单中选择一个值后,接下来我应该做什么?
/getEmployees
调用的响应。我的意思是,当您进行该调用时,您收到的代码示例。另一方面,似乎您没有为员工设置下拉菜单,它显示为type="text"
(看起来像普通文本输入)。 - A. Iglesias