Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Django新手-需要帮助隐藏动态构建的表的某些部分吗_Javascript_Django_Django Templates - Fatal编程技术网

Javascript Django新手-需要帮助隐藏动态构建的表的某些部分吗

Javascript Django新手-需要帮助隐藏动态构建的表的某些部分吗,javascript,django,django-templates,Javascript,Django,Django Templates,我需要隐藏/显示动态构建的表的部分,如下所示。如果未选中“复选框”,我想使用class=“newtable”显示或隐藏该表。但是,我只想隐藏与循环迭代相对应的实例。因此,如果选中复选框,用户将看到额外的信息,并必须填写它。如果没有,他们就看不到,也没有进一步的行动。此逻辑将应用于表的每一行。我可以看到如何使用javascript隐藏“newtable”的所有实例,但我只想隐藏与选中的“checkbox”对应的实例。非常感谢您的帮助 顺便说一句,我必须构建这个“表单”,因为我的变量来自不同的模型。

我需要隐藏/显示动态构建的表的部分,如下所示。如果未选中“复选框”,我想使用class=“newtable”显示或隐藏该表。但是,我只想隐藏与循环迭代相对应的实例。因此,如果选中复选框,用户将看到额外的信息,并必须填写它。如果没有,他们就看不到,也没有进一步的行动。此逻辑将应用于表的每一行。我可以看到如何使用javascript隐藏“newtable”的所有实例,但我只想隐藏与选中的“checkbox”对应的实例。非常感谢您的帮助

顺便说一句,我必须构建这个“表单”,因为我的变量来自不同的模型。找不到任何使用django表单、模型表单或表单集来完成的方法。谢谢

<table>
<tr>
{% for x,y,z in stuff%}
    <td>{{ x.foo }}</td>
    <td>{% for item in y %}
        <input type="checkbox" name="stuff.{{ item.id }}" class="item" value="True" checked/> {{ item }}<br />        
    {%  endfor %}
    </td>
    </tr>
    <tr><td align=center colspan="5">
    <table class="newtable"  border=1>
    <tr><td>
    <input type="radio" name="pref_id{{ z.id }}"  value="1" checked> blah<br>

{%  endfor %}
</td>
</tr>
</table>
</tr>
    {% endfor %}

</table>

{%x,y,z在stuff%}
{{x.foo}}
{y%中的项目的%s}
{{item}}
{%endfor%} 废话
{%endfor%} {%endfor%}
您可以轻松隐藏表下的所有复选框。使用jQuery新建表

<!DOCTYPE html>
<html>
<head>
   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">
   </script>
    <script type="text/javascript">
        $(document).ready(function() {
            $(".newtable input[type=checkbox]:checked").hide();
        });
    </script>
</head>
<body>
    <table class="newtable">
        <tr><td><input type="checkbox" checked/></tr>
        <tr><td><input type="checkbox"></tr>
    </table>
</body>
或者,您可以在生成表单时隐藏它们,假设您正在根据item.checked将某些复选框设置为checked

{% if item.checked %}
    <input type="checkbox" checked style="display:none" ..../>      
{% else %}
    <input type="checkbox"  ..../>      
{% endif %}
{%if item.checked%}
{%else%}
{%endif%}

谢谢你的回答。我最终做了一些非常相似的事情。唯一的区别是,我需要动态地向我想要隐藏的元素添加一个唯一的id,然后使用JQuery来隐藏它。非常感谢你的帮助!
{% if item.checked %}
    <input type="checkbox" checked style="display:none" ..../>      
{% else %}
    <input type="checkbox"  ..../>      
{% endif %}