Bootstrap 4 如何使UI具有引导4个选项卡,在每个按钮单击时都可以发布帖子?

Bootstrap 4 如何使UI具有引导4个选项卡,在每个按钮单击时都可以发布帖子?,bootstrap-4,asp.net-core-mvc,Bootstrap 4,Asp.net Core Mvc,我在asp.net core 2.2中使用带承载令牌的引导4。我想创建选项卡,以便用户能够更好地导航。我从哪里开始?我查看了同事的代码,他在整个表单上只有一个post方法。是否有某种方法可以在每次单击post请求时将数据发送到数据库 我已经尝试将我的同事代码的以下部分放入我的cshtml页面。 ''' ''' 我的代码如下所示: _cshtml(共享布局页面) ''' @使用PhillipCapital.Entity.DataObjects @{ //int-length=men

我在asp.net core 2.2中使用带承载令牌的引导4。我想创建选项卡,以便用户能够更好地导航。我从哪里开始?我查看了同事的代码,他在整个表单上只有一个post方法。是否有某种方法可以在每次单击post请求时将数据发送到数据库

我已经尝试将我的同事代码的以下部分放入我的cshtml页面。 '''


''' 我的代码如下所示: _cshtml(共享布局页面) ''' @使用PhillipCapital.Entity.DataObjects @{ //int-length=menu.Count; } @**@ .高级酒吧{ 宽度:100%; 背景色:#eaf0f4; 高度:10px; 填充顶部:25px; } .里程碑{ 浮动:左; 高度:50px; 宽度:50px; 转换:translateY(-30px); } .里程碑.内容{ 高度:50px; 宽度:50px; 边界半径:25px; } .milestone.barBackground{ 高度:10px; 变换:translateY(30px); } .前进{ 浮动:左; 高度:10px; } .主动{ 背景色:#5cb85c; } .不活跃{ 背景色:#eaf0f4; } .active.fa{ 颜色:白色; 转换:translateY(15px); } .fa{ 颜色:#99a2a8; 转换:translateY(15px); }
@RenderBody()

我试图让菜单工作,以便用户可以导航到不同的页面,但提交后,这就像第10页的用户不能回来。谢谢你的帮助

您可以捕获选项卡上的单击事件,并通过AJAX发布表单。然而,这实际上只解决了部分问题。在服务器端,您需要以某种方式持久化部分表单数据,很可能是通过
TempData

但是,在您准备提交所有数据之前,通常最好完全在客户端处理基于选项卡的表单。在允许用户切换到下一个选项卡之前,使用客户端验证来确保每个部分都是完整和有效的。您还可以使用
localStorage
在用户进行操作时保存每个步骤。这样他们甚至可以离开,然后回来继续填写表格。只需记住在最后提交时清除
localStorage
,这样数据就不会永远存在

您仍然需要服务器端验证,因为客户端验证可能不完整甚至被篡改。这也意味着用户可能需要在发布后再次发送回表单。在页面加载时,您可以通过以下方式自动更改到有错误的选项卡:

var tab = $('.field-validation-invalid').eq(0).closest('.tab-pane').attr('id');
$('#' + tab).tab('show');

在没有ajax的情况下,还有其他方法可以做到这一点吗?我们正在努力使我们的网站尽可能安全。这就是为什么我们要使用httpclient。AJAX没有本质上的“不安全”。这一切都取决于你如何使用它,就像其他任何东西一样。不确定您想要使用的是什么
HttpClient
。这完全是服务器端的,所以它在这里并不起作用。无论如何,使用
HttpClient
也可以轻松地发出不安全的请求。
var tab = $('.field-validation-invalid').eq(0).closest('.tab-pane').attr('id');
$('#' + tab).tab('show');