首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于输入的Django表单更新

基于输入的Django表单更新
EN

Stack Overflow用户
提问于 2014-11-29 23:07:41
回答 1查看 801关注 0票数 0

我希望根据用户对Type of Event的选择添加更多字段。

在不刷新页面的情况下,根据用户选择添加附加字段的最佳方法是什么?

当用户单击Add the details并返回html时,我正在考虑ajax调用吗?

是否有一种方法可以使用带有一系列if/else条件的模板系统来做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-30 03:20:53

这里有两个解决方案..。

1)

将jQuery更改处理程序附加到“事件类型”select元素,并执行ajax请求以返回需要显示的动态字段。

代码语言:javascript
运行
复制
$('#TYPE_OF_EVENT_ID').change(function() {
    $.get('/api/to/return/dynamic/fields/', {'type_of_event': $(this).val()}, function(data, textStatus, jqXHR) {
        # Update DOM with dynamic content return by data (should probably be JSON)
    });
});

2)

将逻辑直接编码到javascript中,以处理case语句,根据“事件类型”select元素中选择的值显示动态字段。

代码语言:javascript
运行
复制
$('#TYPE_OF_EVENT_ID').change(function() {
    switch($(this).val()) {
        case 'Special Event':
            # Show Special Event Fields
        case 'Non Special Event':
            # Show Non Special Event Fields
    }
});

我建议选择1,因为它更好地保持服务器上的这个逻辑是由数据库驱动的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27208135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档