单击按钮可在条件下显示特定div中的不同局部视图

时间:2016-10-15 08:43:18

标签: jquery asp.net-mvc-4 sql-server-2008-r2

<div class="col-md-12" id="bindpartialviews">
    @Html.Partial("_ReportHD")
</div>

是否可以根据上面div中按钮的条件来绑定不同的局部视图?

我的ajax方法如下:

$.ajax({
        cache: false,
        type: "GET",
        url: yourApp.Urls.GetAllReports,
        data: { SearchValue: searchval },
        success: function (result) {
            $("#bindpartialviews").html(result);                
        }
    });

我有两个不同的部分视图(它可能会增加)。 1)_ReportHD.cshtml 2)_ReportSD.cshtml

在我的表格中,我有一个下拉列表。根据所选值,它会在单击一个按钮时加载不同的局部视图。

我使用过ASP.Net MVC 4,JQuery。欢迎任何帮助。

1 个答案:

答案 0 :(得分:2)

您必须在Controller中创建一个简单的方法。然后根据条件,您必须返回部分视图。

控制器方法

        /// <summary>
        /// Choose View based on selected dropdown value.
        /// </summary>
        /// <param name="inputParam">Parameter.</param>
        /// <returns>Partial view.</returns>
        public PartialViewResult ChooseView(string inputParam)
        {
            //Here add your condition.
            if(inputParam=="A")
            {
                return PartialView("_ReportHD");
            }
            else
            {
                return PartialView("_ReportSD");
            }
        }

然后点击按钮调用AJAX功能。那么你就可以轻松地将它绑定在任何div中。

注意:您必须传递选定的下拉值。

$.ajax({
        cache: false,
        type: "GET",
        datatype:"text",
        url: "/ControllerName/ChooseView?inputParam="+searchval,
        success: function (result) {
            $("#bindpartialviews").html(result);                
        }
    });