【发布时间】:2012-02-24 18:46:35
【问题描述】:
我正在做一个需要我使用 FilteredSelectMultiple 的 Django 项目,这是一个示例:
crews = ModelMultipleChoiceField(
queryset=Crew.objects.all(),
widget=widgets.FilteredSelectMultiple(
"Crews", is_stacked=False ),
required=True
)
当然,在模板中,我已经正确调用了 SelectBox、SelectFilter 和 core.js:
<script type="text/javascript" charset="utf-8" src="/web/js/core.js" ></script>
<script type="text/javascript" charset="utf-8" src="/web/js/SelectFilter2.js" ></script>
<script type="text/javascript" charset="utf-8" src="/web/js/SelectBox.js" ></script>
这适用于 1.6 以下的每个 jquery 版本。现在的问题是,我实际上需要一个 1.6 及更高版本的 jquery。原因是,我需要使用更新的验证引擎。为什么,这是因为每当我使用 validationEngine 验证表单时,它实际上超出了表单,我希望它留在该表单的 div 中。
为了防止它发生,我需要在声明验证引擎时添加一些选项,这就是我的做法:
$("#addform").validationEngine({
relative: true,
overflownDIV: ".data_container",
});
更新版本的validationEngine要求我至少有1.6及以上版本的jQuery。
到目前为止,我尝试/想到的解决方案是:
-
找到一个可以正常加载的稳定jQuery版本
- 我在这方面失败了。我尝试使用 1.4.2 和最新版本之间的所有 jQuery 版本,即 1.7.1,但没有运气
-
加载 2 个 jQuery 版本
- 这听起来不错,但我试过了,还是失败了
-
把validationEngine改成别的东西
- 这是我真的不想做的最后一个选择。我们已经做了很多事情,以至于使用另一个可能需要我们的时间,这超出了我们所拥有的。
现在,我真正的问题是,除了我目前想到的选项之外,还有其他解决方案吗?目前还没有用于渲染 FilteredSelectMultiple 小部件的更新 js 文件。
【问题讨论】:
-
您是在 Django 管理员中执行此操作,还是尝试在管理员外部以您自己的形式使用管理员的 FilteredSelectMultiple 小部件?
-
嗨,是的,我在管理员之外的自己的表单中使用 FilteredSelectMultiple 小部件。
标签: jquery django forms jquery-validation-engine