Я пробовал следовать очень многим различным руководствам, но по какой-то причине ничего не работает ..

_context.City - моя модель

Название города - это то, что я хочу заполнить автозаполнением

Я даже пробовал это, и это не работает


<input type="text" id="tags" />
<script>
            $(function () {
                var availableTags = [
                    "ActionScript",
                    "AppleScript",
                    "Asp",
                    "BASIC",
                    "C",
                    "C++",
                    "Clojure",
                    "COBOL",
                    "ColdFusion",
                    "Erlang",
                    "Fortran",
                    "Groovy",
                    "Haskell",
                    "Java",
                    "JavaScript",
                    "Lisp",
                    "Perl",
                    "PHP",
                    "Python",
                    "Ruby",
                    "Scala",
                    "Scheme"
                ];
                $("#tags").autocomplete({
                    source: availableTags
                });
            });
        </script>
-1
Michalodzien 10 Окт 2019 в 15:46

1 ответ

Лучший ответ

Вот простая демонстрация того, как использовать автозаполнение:

1.Model :

public class City
{
   public int CityId { get; set; }
   public string CityName { get; set; }
}

2.View :

<input type="text" id="tags" />
@section Scripts{
    <link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
    <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
    <script>
        $(function () {            
            $("#tags").autocomplete({
                source: '/Home/Test'                  
            });
        });
    </script>
}

3.Controller :

public class HomeController : Controller
{
    private readonly PublishMvcProjContext _context;

    public HomeController(PublishMvcProjContext context)
    {
        _context = context;
    }    
    [HttpGet]
    public IActionResult Privacy()
    {
        return View();
    }
    [HttpGet]
    public IActionResult Test()
    {
        var name = HttpContext.Request.Query["term"].ToString();
        var cityname = _context.Cities.Where(c=>c.CityName.Contains(name)).Select(c => c.CityName).ToList();
        return Ok(cityname);
    }
}

4.DbContext :

public class PublishMvcProjContext : DbContext
{
    public PublishMvcProjContext (DbContextOptions<PublishMvcProjContext> options)
        : base(options)
    {
    }
    public DbSet<City> Cities { get; set; }
}

5. результат: введите описание изображения здесь

1
Rena 11 Окт 2019 в 07:32