如何使用django jQuery在django的change_form.html中找到fieldset id

时间:2012-01-23 07:27:01

标签: jquery

我在change_form.html中有很多字段集。基于点击功能,我希望隐藏/显示一些字段集。我如何获得fieldset id?有超过1个字段集。

在javascript中 例如。 $('fieldset')[1] .hidden = true; //基于某些条件的假

我想要一个与上述语句等效的django jQuery。

我试过,$(“#fieldset”)1 = true; 还试过$(“div.form-row.field1.field2”)。hidden = true;

我只想使用django.jQuery,如下所示。如何访问字段集1,2和显示/隐藏功能。

(function($){
    $(document).ready(function($){
 //function to hide/show the fieldset related to POP3_status
 // if it is checked, show fieldset[1] and fieldset[2]
//if  it is not checked, hide fieldset[1], fieldset[2]

    $("#id_pop3_status").click(function(){
        var checked = $("#id_pop3_status").is(':checked');

        //not a POP3 account
        if (!checked){
        alert('not clicked');
                $("#fieldset")[1].hide();

        }
        //if the POP3_status is checked i.e it is POP3 account
        else {
        alert('clicked');
                $("#fieldset")[1].show();
        }
    });
    });
})(django.jQuery);

2 个答案:

答案 0 :(得分:0)

尝试

 $("#fieldset").hide();

如果您以后想再次展示,可以使用

 $("#fieldset").show();

答案 1 :(得分:0)

您尝试过的任何内容都不是有效的jQuery:

$('fieldset')[1].hidden = true

1)当你下标一个jQuery对象集时,你会得到一个常规的javascript对象,所以你实际上需要做一些像$($('fieldset')[1])这样的东西把它变成一个jQuery对象。 2)hidden不是有效的财产;您需要.hide() / .show()或类似.css('display', 'none')的内容。

$("div.form-row.field1.field2").hidden = True

1)这实际上会选择具有“form-row”类的div以及“field1”“field2”,它们将不匹配任何内容。您要找的是$('div.form-row.field1, div.form-row.field2')。 2)关于hidden不是上述有效属性的相同位适用