web2py中的动态可选表单部分?

时间:2013-10-14 06:54:30

标签: jquery web2py dynamicform

我有一个通过SQLFORM创建的web2py表单。表单的某个部分是可选的,因此我希望默认情况下将其隐藏起来,并仅在用户选中表单上的复选框时显示。

我现在正在做的是将各种输入表格行设置为在控制器中显示为无:

form.element('#mytable_myfield__row')['_style'] = 'display: none'
...

然后在我看来:

{{extend 'layout.html'}}
<script>
jQuery(document).ready(function($){

    $('#mytable_is_something').change(function() {
        $('#mytable_myfield__row').toggle();
            ...
    });       

});
</script>
<h1>Create Something</h1>
{{=form}}

(其中#mytable_is_something是我的复选框的ID)

  1. 这是最好的方法吗?
  2. 由于我想要切换多个可见度的字段,有没有办法将它们分组到DIV中,然后只切换该div的可见性?

1 个答案:

答案 0 :(得分:2)

  1. 这是最好的方法吗?
  2. 似乎合理,但如果将CSS移动到视图中的块(或单独的样式表)而不是内联,则可能更清晰。

    1. 由于我想要切换多个可见度的字段,有没有办法将它们分组到DIV中,然后只切换该div的可见性?
    2. 可能最好的方法是创建custom form layout