繁体   English   中英

根据先前的输入过滤html表单选项

[英]Filtering html form options based on previous input

我将通过说我不是在这里查找代码来开头这个问题,这只是在进行大量工作之前表明我的方法是否正确。 这就是为什么我还没有尝试自己编写代码的原因。

我正在开发一个包含先例数据库的django网站。 我想让某些用户使用通用CreateView和使用crispy-forms构建的ModelForm上传新决策。 我想通过从html <option>字段中删除不相关的选项来尽可能简化用户操作。 我关注的表单部分看起来像:

<select class="input-xlarge select" id="id_decisions" name="clauses">
    <option value="" selected="selected">---------</option>
    <option value="1">2012 Decisions</option>
    <option value="2">2011 Decisions</option>
    ...
</select>
<select class="input-xlarge select" id="id_clauses" name="clauses">
    <option value="" selected="selected">---------</option>
    <option value="1">2012 clause 1</option>
    <option value="2">2012 clause 2</option>
    <option value="3">2011 clause 1</option>
    ...
</select>

当有人从下拉列表中选择2012 decisions ,我想过滤掉“子句”选项字段中所有未显示“ 2012年”的选项。 我怀疑这意味着编写类似于该问题答案的javascript过滤器,但是我不知道任何javascript,因此并不真正理解该代码在做什么。 在我致力于学习足够的javascript以确保产生良好的解决方案之前,我只想确保我对这样做的怀疑是正确的。 是吗? 我是否缺少使用Django或crispy-forms在Python中执行此操作的明显方法?

如果要过滤下拉列表而不提交表单和刷新页面,那么唯一的方法就是使用Javascript。 这不是Django的限制:Web应用程序就是这样工作的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM