我是JavaScript的新手,并试图找出执行以下操作的规范方法。
我有一个带有一些复选框和选择器的表单。 假设复选框是音乐风格,选择器是人名。
我希望用户能够为多人选择音乐风格,然后提交包含所有数据的表单。
例如,用户可能首先检查Classical,Jazz,Rock和Pop并选择“Joe”,然后选择Jazz,Pop,Country和Electronica并选择“Jane”。因此,“提交人”和“提交表单”必须有两个不同的按钮。
我想:
我觉得使用jquery和JSON是完美的,但我不确定用什么搜索术语来弄清楚如何做到这一点。
如果重要,表单将由Python中的Django视图处理。
答案 0 :(得分:1)
您可以通过将AJAX用于提交人来实现此目的。你的工作流程应该是这样的:
jquery ajax()
)请求将其传递给后端脚本。 PS - 当您通过AJAX将信息传递到后端时,您不必将其编码为JSON。您可以将其作为标准POST请求发送。要将Javascript对象编码为JSON,请使用JSON.stringify()
以上是这样做的一种方式,但是它不会像你在问题中提到的那样工作(继续收集数据 - 立即提交),要按照这种方式工作,每次用户点击“提交人”时,添加数据到Javascript对象,但不提交。提交的数据将继续在JS对象中构建。
最后,当用户点击“提交表单”时,将数据字符串化并提交。
答案 1 :(得分:0)
如何使用django表单向导..这还够吗? https://docs.djangoproject.com/en/dev/ref/contrib/formtools/form-wizard/