Javascript 在嵌套的accordion结构中使用jQuery进行DIV显示

Javascript 在嵌套的accordion结构中使用jQuery进行DIV显示,javascript,jquery,html,Javascript,Jquery,Html,我有一个从模型列表加载的手风琴,因此它会重复,并根据模型的ID分配新的ID。在这个结构中,我有一个DIV is display:none,单击单选按钮后,我希望它向下滑动并显示。这是我的一些HTML: <tr style="height:35px"> <td style="text-align:left" > <label id="lblOtherAvery+@Model[i].UserId" style="font-size:x-small

我有一个从模型列表加载的手风琴,因此它会重复,并根据模型的ID分配新的ID。在这个结构中,我有一个DIV is display:none,单击单选按钮后,我希望它向下滑动并显示。这是我的一些HTML:

<tr style="height:35px">
    <td style="text-align:left" >
        <label id="lblOtherAvery+@Model[i].UserId" style="font-size:x-small">Other:</label> 
    </td>
    <td>
        @Html.RadioButtonFor(x=>Model[i].AverySize, "Other", new { @id = "chkOtherAvery" + @Model[i].UserId, @style = "width:30px;", @class = "radLabel radLabelOther", @disabled = "disabled"})
    </td>
</tr>
<tr>
    <td style="text-align:center" colspan="2" >
        <div id="divAvery_@Model[i].UserId" style="display:none;vertical-align:top;text-align:center" class="divAvery">
            <table style="width:100%;text-align:center">
                <tr style="height:20px;">
                    <td style="font-size:x-small">Rows:</td>
                    <td>@Html.TextBoxFor(x=>Model[i].LabelRows, new {@id = "txtRows" + @Model[i].Userd, style = "width:50px;font-size:x-small;height:20px"})<span style="font-size:x-small"><i>(MAX 16)</i></span></td>
                    <td style="font-size:x-small">Columns:</td>
                    <td>@Html.TextBoxFor(x=>Model[i].LabelColumns, new {@id = "txtColumns" + @Model[i].UserId, style = "width:50px;font-size:x-small;height:20px"})<span style="font-size:x-small"><i>(MAX 3)</i></span></td>
                </tr>
            </table>
        </div>
    </td>
</tr>
但这不起作用。我可以让DIV元素正常,但是我不能让它显示出来。我做错了什么

我甚至尝试通过以下方式获取DIV的ID:

 var divId = $(this).closest('tr').next().children().find('.divAvery').attr('id');
但这也不行

我现在可以通过这样做使其工作:

 var $divId = $(this).closest('tr').next().children().find('.divAvery');
 $divId.slideDown();

为什么$能起作用?

有什么特别的原因可以一起使用
slideDown
show
吗?没有,但它既不能单独使用也不能一起使用。你的
div
有一个
id
必须是唯一的。你为什么不用这个<代码>$(“#yourId”).show()@AlexChar我可以得到ID,正如我所指出的。它像“divAvery_123456789”一样返回,但这不起作用。我甚至试着在ID的开头加上英镑符号,但也不起作用。控制台中有错误吗?
 var $divId = $(this).closest('tr').next().children().find('.divAvery');
 $divId.slideDown();