首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Asp.net核心MVC jquery自动完成返回空白数据行

Asp.net核心MVC jquery自动完成返回空白数据行
EN

Stack Overflow用户
提问于 2020-03-05 13:56:46
回答 1查看 138关注 0票数 0

我已经在这个问题上挣扎了一段时间。我已经开始使用MVC核心,并且正在构建一个ASP.NET核心ASP.NET项目。我在JQuery autocomplete小部件从查询返回空白数据时遇到了问题。

下面是我的代码:

html视图:

代码语言:javascript
代码运行次数:0
运行
复制
@section Scripts{

    <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

    <script src="~/lib/Scripts/jquery-3.4.1.js"></script>
    <script src="~/lib/Scripts/jquery-ui.min.js"></script>
<script>

$("#searchInput").autocomplete({
source: function (request, response) {
$.ajax({
url: '@Url.Action("GetSearchValue", "Requests")',
dataType: "json",
data: { search: $("#searchInput").val() },
success: function (data) {
response($.map(data, function (item) {
return { label: item.NameString};
}));
},
error: function (xhr, status, error) {
alert("Error");
}
});
}
});

</script>
}

控制器:

代码语言:javascript
代码运行次数:0
运行
复制
    [HttpGet]
    public async Task<IActionResult> GetSearchValue(string search)
    {
        var allsearch = _context.Requests.Where(x => x.NameString.ToLower().Contains(search)).Select(x => new Requests
        {
            NameString = x.NameString,
        }).ToList();
        return Ok(allsearch);
    }

JQuery似乎返回了正确数量的建议,但是,它们是空白的。所以一定是JQuery中的NameString没有被正确传递,但我想不出该怎么做。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-05 17:20:09

请使用以下代码

代码语言:javascript
代码运行次数:0
运行
复制
response($.map(data, function (item) {
        return item.nameString;
      }));

而不是

代码语言:javascript
代码运行次数:0
运行
复制
response($.map(data, function (item) {
return { label: item.NameString};
}));

看起来不错。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60538985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档