PagedList MVC With JQuery UI 自动完成导致错误

PagedList MVC With JQuery UI Autocomplete Causing Error

我正在尝试在文本框上使用 JQuery UI 自动完成功能来过滤分页列表并动态更新列表,以便它只显示以过滤器中的值开头的任何内容.但是,每当我开始在搜索框中输入内容时,都会出现以下错误:

语法错误:意外的标记 <

这是我的控制器:

    [HttpGet]
    public ActionResult Index(string filter, int currentPage = 1)
    {
        List<string> allEmails = null;

        if (!string.IsNullOrEmpty(filter))
        {
            allEmails = dataContext.Emails
                .Where(x => x.email.StartsWith(filter))
                .Select(x => x.email)
                .ToList();
        }
        else
        {
            allEmails = dataContext.Emails
                .Select(x => x.email)
                .ToList();

        }
        PagedList<string> model = new PagedList<string>(allEmails, page, pageSize);
        ViewBag.Emails = allEmails.OrderBy(x => x).Skip((page - 1) * pageSize).Take(pageSize);
        ViewBag.Filter = filter;
        return View(model);
    }

这是我的观点:

 @model PagedList<string>
 @using PagedList
 @using PagedList.Mvc

<div id="paginatedDiv">
    <table id="pageinatedTable">
         <tr>
             <th>
                 Email
             </th>
         </tr>
         @foreach (var item in ViewBag.Emails)
         {
              <tr>
                 <td>
                     @item
                 </td>
             </tr>
         }
     </table>

     @Html.PagedListPager(Model,
        (page) => Url.Action("Index", "Home", new
        {
            page,
            pageSize = Model.PageSize,
            filter = ViewBag.Filter
        }),
        PagedListRenderOptions.ClassicPlusFirstAndLast)
 </div>
 @Html.TextBox("search")


 @section scripts
 {
     <script type="text/javascript">
         $(document).ready(function () {
              $('#search').autocomplete({
                     source: function(request, response)
                     {
                        $.ajax({
                            url: '@Url.Action("Index", "Home")',
                            dataType: "json",
                            contentType: 'application/json, charset=utf-8',
                            data: {
                                filter : $("#search").val(),
                                page : '@Model.PageNumber'
                            },

                            error: function (xhr, status, error) {
                                alert(error);
                            }

                        })},
                      minlength: 1
             });

         });
     </script>
  }

我在这里尝试做的事情可行吗?我会以错误的方式去做吗?如果您需要更多信息,请告诉我。

Ajax 函数正在返回一个 HTML 错误,该错误正在尝试解析为该函数。它会失败并出错,因为第一个字符将是 '<' 之类的