如何将 tabpanel 的键从视图传递到控制器 asp mvc

how to pass key of tabpanel from wiew to controller asp mvc

我有一个选项卡面板,允许我在两个 window 之间切换,我将我的选择发送到我的控制器以在每个 tabuleur 中执行不同的语句,例如,如果我有 id = proj_tab_1 它 returns 我输入,如果 id = proj_tab_2 它 returns 输出视图,但我不知道如何在视图和控制器之间传递电子表格关键信息这里是我的代码

查看:

 <div class="tab-content">

    <div class="tab-pane fade in active" id="proj_tab_1" >

        @Html.Partial("_InputFilesList", Model)
    </div>



    <div class="tab-pane fade" id="proj_tab_2" >
        @Html.Partial("_OutputFilesList", Model)
    </div>

</div>

控制器:

  public ActionResult GetFilesListByType(MonitorFilesModel model)
        {
            model.FillDDL();
            model.GetFilesListByType();
            ViewBag.Success = true;

//if tableur 1
                return View("_InputFilesList", "~/Views/Shared/_AjaxLayout.cshtml", model);
            //if tableur 2
            return View("_OutputFilesList", "~/Views/Shared/_AjaxLayout.cshtml", model);

        }

在我看来,您不需要将密钥发送到控制器。最简单的方法,使用 javascript(我使用 jquery,但这取决于你),像这样:

<script>

 $('dom_element').on('event', function(){

   var rel = $(this);
   var pane = rel.closest('.tab-pane');
   pane.removeClass('in');
   pane.removeClass('active');
   pane.next('.tab-pane').addClass('in active');
 });
</script>

否则,您可以在表单中设置部分视图并使用标准操作提交按钮重定向到您需要的操作。

顺便说一下,我认为您必须 return 局部视图,而不仅仅是视图。

希望对你有帮助。