我想在不重新加载页面的情况下获得结果。 (异步)

时间:2015-08-07 05:41:50

标签: javascript jquery asp.net-mvc entity-framework-6 code-first

这是视图中的代码。

       <div class="col-sm-4 page-sidebar">
                    <aside>
                        <div class="widget sidebar-widget white-container links-widget">
                            <br>
                            <div class="title-lines">
                                <h4 class="m0" style="color:deepskyblue">Course List</h4>
                            </div>
                            @foreach (var item in Model.ProgramCategory)
                            {
                                <ul class="ullist">
                                    <li>
                                        @Html.ActionLink(item.courseCategory, "Index", new { crsCtgry = item.courseCategory }, new { @class = "" })
                                    </li>
                                </ul>
                            }
                        </div>
                    </aside>
                </div>

                <div class="col-sm-8 page-content">
                    <div class="white-container mb0">

                        @if (Model.CourseCategories != null)
                        {
                            <h3>@Html.DisplayFor(model => model.CourseCategories.)  </h3>
                            <table class="table">


                                @foreach (var item in Model.CourseCategories)
                                {
                                    <tr>
                                        <td>
                                            @item.courseSubject
                                        </td>
                                        <td>
                                            @item.courseName
                                        </td>
                                    </tr>
                                }

                            </table>
                        }

                    </div>
                </div>

这是我的Controller中的Index方法。

  public ActionResult Index(string crsCtgry)
    {
        var viewModel = new DisplayCourseIndexData();

        viewModel.ProgramCategory = db.ProgramCategoriess;
        if (crsCtgry != null)
        {
            viewModel.CourseCategories = db.CourseCategories.Where(n => n.courseField == crsCtgry).Select(n => n).ToList();
        }

        return View(viewModel);

    }

现在,我正在做的是,当点击课程类别时,该类别下的所有课程(CourseName&amp; subject)都显示在同一页面上。这是代码正常工作。但是刷新页面会显示结果。我需要知道如何做到这一点,而不是让人耳目一新。当我点击链接时,结果必须显示而不重新加载页面(异步)并顺利。有办法吗?

1 个答案:

答案 0 :(得分:0)

使用@ Ajax.ActionLink而不是@ Html.ActionLink。此链接(http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/ajax-actionlink-and-html-actionlink-in-mvc/)将帮助您完成该操作。