【问题标题】:How do i create ActionLink for Partial view in Asp.net MVC with out controller action如何在没有控制器操作的情况下在 Asp.net MVC 中为局部视图创建 ActionLink
【发布时间】:2013-06-04 04:34:13
【问题描述】:

我有选择框,当用户选择选择框的项目时,它会动态触发部分视图。
我的计划是在每个选项项目中创建 ActionLinks。我已经创建了我的部分视图。我没有计划为该部分视图创建单独的控制器操作。我想在用户选择诸如
@Html.ActionLink("Link for my Partial View")
方法之类的选项时调用部分视图像这样。 我如何用 Razor 做到这一点?还有其他方法可以做到这一点吗?

编辑:有 12 个部分视图可供渲染,所以有什么方法可以在没有操作的情况下运行代码,我想在不点击提交按钮的情况下触发部分视图?

【问题讨论】:

    标签: asp.net-mvc razor


    【解决方案1】:

    你可以像这样使用 jquery 进行更改。

    @Html.DropDownList("DropDownCategory", new SelectList(Model.Category, "ID", "Name"))
    @Html.ActionLink("Submit name", "ActionName", "ControllerName", null, new { @id = "SubmitName" })
    
    <script type="text/javascript">
        $('#SubmitName').click(function () {
            var value = $('#DropDownCategory').val();
            var path = '@Url.Content("~/ControllerName/ActionName")' + "?CategoryId=" + value
            $(this).attr("href", path);
        });
    </script>
    

    【讨论】:

      【解决方案2】:

      你可以试试 - 首先需要更改选择框的选定值,然后从您的控制器调用操作

      在控制器上(HomeController)

       public PartialViewResult PartialViewTest()
          {
              return PartialView();
          }
      

      正在查看

      <select>
      <option value="0">One</option>
      <option value="1">Two</option>
      

      <script>
      $("select").change(function () {
          $.get('@Url.Action("PartialViewTest", "Home")', function (data) {
              $('#detailsDiv').replaceWith(data);
          });
      }).trigger('change');
      

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 2011-09-11
        • 1970-01-01
        • 1970-01-01
        • 2011-05-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-25
        • 1970-01-01
        相关资源
        最近更新 更多