我有 Flask 和 Flask-WTF
我试图实现表单,该表单应根据来自另一个(上一个)字段的选定值更改choices
SelectField
列表(并且可能会更改输入集)。
我的意思是......例子。
实施例。 A:
有初始表格
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
Model: [ ----- ] // No options, disabled
... ......... // Other fields
然后,用户选择Ford
,并显示适当的options
模型
Manufacturer: [ Ford ] // Options are: Ford, KIA, Honda ... still posible to change
Model: [ ----- ] // Options are: Focus, Mondeo, Mustang, ...
... ......... // Other fields
或者,也许是alt。行为,例如B:
有初始表格
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
然后,用户选择Ford
,并使用适当的选项显示Model
字段
Manufacturer: [ Ford ] // Options are: Ford, KIA, Honda ... still possible to change
Model: [ ----- ] // Options are: Focus, Mondeo, Mustang, ...
或者,可能是"向导",例如。 C:
有初始表格
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
[ next ] // button
然后,用户选择Ford
,点击next
,并显示Model
字段,而前一个字段成为标签
Manufacturer: Ford // Just a label
Model: [ ----- ] // Options are: Focus, Mondeo, Mustang, ...
[prev] [ next ] // buttons
我有一些想法,怎么做。
1)当用户选择(任何)字段时,我会为新表单发出POST请求。这是可能的,因为我做了非常轻量级的应用程序。它很容易实现,但可能很烦人,而且不如我想要的那么好。
2)当用户选择字段时,从服务器(json / pson)获取相关字段的选项,并且此相关字段将更新并解锁。
3)" C"行为是最简单的实施,但它不是本世纪的
第二个想法听起来不错......但我对js反击并不是很好。
那么..问题是如何实现这样的形式? 任何好的教程/文档的链接都会很棒(我用Google搜索,但没有找到)
答案 0 :(得分:1)
我相信有两种好方法可以达到你想要的效果。
第二种方法的优点是从用户的角度来看响应更快,因为所需的所有数据都已经在页面上。
你提到javascript不是很好,但我不认为还有另一种方法可以做你想做的事情,除非你可以接受你的第一个想法。