我正在显示bootstrap dropdownmenu,并在单击任何父下拉列表值时显示其他子下拉列表。当我单击下拉菜单中的值时,子菜单将打开,而当我单击下一个下拉菜单值时,上一个chidmenu下拉菜单不会关闭。如果要单击父菜单的任何其他值,我想关闭上一个子菜单。这个吗?请帮忙!提前致谢
这是我的代码:
<div class="dropdown">
<ul id="ddlTest" class="ddltestdd dropdown-menu" role="menu">
@foreach (var item in (IEnumerable<SelectListItem>)ViewBag.testresults)
{
<li class="dropdown-submenu">
<span class="dropdown-toggle" data-toggle="dropdown">@item.Text</span>
<span class="testCaret" aria-hidden="true" style="float:right;margin-top:5px;">
</span>
<ul class="ddltestdd dropdown-menu dropup" role="menu" id="[email protected]">
<li>
<span class="TestBySubmenu">T1</span>
</li>
<li>
<span class="TestBySubmenu">T2</span>
</li>
</ul>
</li>
}
</ul>
</div>
jQuery:
var testText;
$(".dropdown-submenu").click(function () {
$(this).find(".dropdown-submenu").removeClass('open');
$(".dropdown-submenu:hover > .dropdown-menu").css('display', 'block');
testText;= $(this).text();
return false;
});
$('.dropdown-menu li span').click(function () {
var Allowpageload = testText;
if ((Allowpageload == "T1") || (Allowpageload == "T2")) {
//load page
$(".dropdown-submenu:hover > .dropdown-menu").css('display', 'none');
$('[id^="testorder_]').dropdown('toggle');
$('[data-toggle="dropdown"]').parent().removeClass('open');
}
阅读代码后,我认为您没有正确安排类使其正常工作。我在这里有一个很好的子菜单示例:
您的第一个<li> tag
不应该有dropdown submenu
它。相反ul
,应该是您的嵌入式标签
<div class="dropdown">
<ul id="ddlTest" class="ddltestdd dropdown-menu" role="menu">
@foreach (var item in (IEnumerable<SelectListItem>)ViewBag.testresults)
{
<li>
<span class="dropdown-toggle" data-toggle="dropdown">@item.Text</span>
<span class="testCaret" aria-hidden="true" style="float:right;margin-top:5px;">
</span>
<ul class="ddltestdd dropdown-menu dropup sub-menu" role="menu" id="[email protected]">
<li>
<span class="TestBySubmenu">T1</span>
</li>
<li>
<span class="TestBySubmenu">T2</span>
</li>
</ul>
</li>
}
</ul>
</div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句