Javascript WTForms:获取相关数据
我有烧瓶和烧瓶WTFJavascript WTForms:获取相关数据,javascript,python,json,flask,flask-wtforms,Javascript,Python,Json,Flask,Flask Wtforms,我有烧瓶和烧瓶WTF 我正在尝试实现表单,它应该根据从另一个(先前)字段中选择的值(可能是输入集的变化)更改选择字段的列表 我是什么意思。。例子 例如A.: 有首字母 Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ... Model: [ ----- ] // No options, disabled ... ......... // Other fields Manufacturer:
我正在尝试实现表单,它应该根据从另一个(先前)字段中选择的值(可能是输入集的变化)更改
选择字段的列表
我是什么意思。。例子
例如A.:
有首字母
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
Model: [ ----- ] // No options, disabled
... ......... // Other fields
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
[ next ] // button
然后用户选择Ford
,并显示适用于车型的选项
Manufacturer: [ Ford ] // Options are: Ford, KIA, Honda ... still posible to change
Model: [ ----- ] // Options are: Focus, Mondeo, Mustang, ...
... ......... // Other fields
或者,可能是一种替代行为,例如B:
有首字母
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
Model: [ ----- ] // No options, disabled
... ......... // Other fields
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
[ next ] // button
然后用户选择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 ...
Model: [ ----- ] // No options, disabled
... ......... // Other fields
Manufacturer: [ ----- ] // Options are: Ford, KIA, Honda ...
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”行为是最简单的实现方式,但它并不适用于本世纪
第二个主意听起来不错。。但我是BackEnder,对js不是很好
所以。。问题是如何实施这些形式?
任何指向优秀教程/文档的链接都会非常棒(我在谷歌上搜索过,但没有找到任何链接)我相信有两种方法可以让你实现你想要的
使用AJAX根据用户选择加载所需的选项(如您的第二个想法所示)
如果选项列表不大,您可以将所有选项嵌入为javascript对象,并根据用户选择使用javascript加载相应的选项。前
第二种方法的优点是,从用户的角度来看,响应速度更快,因为所需的所有数据都已在页面上
你提到javascript不是很好,但我认为除了你可以接受你的第一个想法之外,没有其他方法可以做你想做的事情。谢谢你的链接。它非常有用!我同意,这将由js完成。。AJAX是最好的选择。。你能为这个案子提供一个好的链接吗?。。从示例中可以看出,嵌入每个可能的制造商、型号和许多其他选项的树是过分的,因为它很大,而且IRL不会有太多的变化。我发现:-看起来这就是我正在搜索的东西。。我猜,这个问题的消息是一个html(而不是json),对吗?