我正在使用Bootstrap 4处理ASP.NET Core项目,并且我想要在多个视图中显示一些Bootstrap模式。
这些Modals具有一些内部元素的Javascript函数,如Buttons和Inputs。
在多个视图中加载这些Modals(及其Javascript)的正确方法是什么?
我认为我使用的是PartialViews,但我不知道在哪里放置Javascript代码(我知道将它放在PartialViews中是一种不好的做法)。
答案 0 :(得分:0)
创建一个单独的JS文件,并在使用此部分视图的每个页面的底部引用它,因此脚本不会阻止页面呈现。
或者,您可以创建一个包含模式HTML和JS的布局文件,并让您的视图继承自此。虽然由于构成优于继承原则,我会建议反对这种方法。
答案 1 :(得分:0)
Tag helpers可能更适合用于此,这是一个bootstrap模态标记助手ModalTagHelper
的示例然后,如果你把它放在_ViewImports文件中:
@using AssemblyNameWithTagHelpers
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper "*, AssemblyNameWithTagHelpers"
你可以使用这样的标签助手:
<modal id="simpleModalFromAnchor" title="Modal Title">
<modal-body>
<h4>Something happened</h4>
<p>Something happened</p>
</modal-body>
</modal>
使用javascript,将它放在一个单独的js文件中并从你使用模式的每个页面引用它,更好的是,将它与其他使用良好的组件捆绑在一起并将其包含在_Layout文件的底部< / p>