0

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

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

4

2 回答 2

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>
于 2013-06-04T04:43:53.777 回答
1

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

在控制器上(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');

希望它可以帮助你

于 2013-06-04T04:58:07.197 回答