coolfieldset expand删除dispaly都没有内部div

时间:2016-09-29 12:37:02

标签: jquery

我正在使用这个可折叠的 Cool fieldset

问题是我有几个fieldset

<fieldset id="fieldset1" class="coolfieldset">
    <legend>Default</legend>
    <div>
        <p>By default the <b>fieldset</b> is opened or expanded at start. Click on its <b>legend</b> to close or collapse it.</p>

        <p>The code is simply like below</p>

    </div>
</fieldset>
<fieldset id="fieldset2" class="coolfieldset">
    <legend>Default</legend>
    <div style="display:none">
        not visible
    </div>
</fieldset>

$('#fieldset1').coolfieldset({collapsed:true});
$('#fieldset2').coolfieldset();

现在,当我关闭并打开fieldset2时,你可以看到我的div没有打开我不想要的样式

可以指导我怎样才能阻止它不删除我的divs

1 个答案:

答案 0 :(得分:1)

问题在于,您使用的插件将始终操纵字段集内的div。

话虽如此,我可以为您考虑两种选择:

1 - 在字段集中使用另一个元素标记,例如:

<fieldset id="fieldset2" class="coolfieldset">
    <legend>Default</legend>
    <p style="display:none">
        Will not show.
    </p>
    <div style="display:none">
       will show
    </div>
</fieldset>

2 - 您可以调整插件本身(jquery.coolfieldset.js),因此您不必使用字段集中的div,而是使用类来代替,它将类似于:< / p>

obj.find('div')更改为obj.find('.myClass')。 之后,您可以像这样使用它:

<fieldset id="fieldset2" class="coolfieldset">
        <legend>Default</legend>
        <div style="display:none">
            Will not show.
        </div>
        <div  class="myClass" style="display:none">
           will show
        </div>
    </fieldset>