问题:在Bootstrap Tabs面板中,我们如何在相应的标签内容区域中显示MVC View页面?
详细信息:以下示例(取自here)在我的ASP.NET MVC Core项目中正常工作。但是,使用anchor tag helper
我希望在用户点击标签时调用操作方法;当我这样做时,我得到以下错误。例如,我在标签Menu 1
中出现此错误,我使用asp-controller
和asp-action
属性,如下所示。我知道错误与href
属性相关,该属性与相应的选项卡内容相关。有没有解决方法,所以我们仍然可以在单击选项卡时调用操作方法?:
错误:
Cannot override the 'href' attribute for <a>
。
错误就在这一行:<li><a data-toggle="tab" href="#menu1" asp-controller="myController asp-action="myAction">Menu 1</a></li>
如果未使用锚标记帮助程序,则以下工作:
<div class="container">
<h2>Dynamic Tabs</h2>
<ul class="nav nav-tabs">
<li class="active"><a data-toggle="tab" href="#home">Home</a></li>
<li><a data-toggle="tab" href="#menu1">Menu 1</a></li>
<li><a data-toggle="tab" href="#menu2">Menu 2</a></li>
<li><a data-toggle="tab" href="#menu3">Menu 3</a></li>
</ul>
<div class="tab-content">
<div id="home" class="tab-pane fade in active">
<h3>HOME</h3>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
</div>
<div id="menu1" class="tab-pane fade">
<h3>Menu 1</h3>
<p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
</div>
<div id="menu2" class="tab-pane fade">
<h3>Menu 2</h3>
<p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam.</p>
</div>
<div id="menu3" class="tab-pane fade">
<h3>Menu 3</h3>
<p>Eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.</p>
</div>
</div>
</div>
答案 0 :(得分:0)
您需要做的是在所需的标签内容中调用{{1}}。保留href不变,目的只是根据选项卡ID显示相应的选项卡。