【问题标题】:Typeahead bootstrap pass parameter to model as nullTypeahead bootstrap 将参数传递给模型为 null
【发布时间】:2016-07-13 19:32:45
【问题描述】:

我正在使用这个plugin,在要提交的表单中创建一个自动完成字段。一切正常,除了当我提交表单时,模型中传递给控制器​​的字段为空。我不知道如何返回我得到的数据。

这是我的代码 html:

@Html.TextBoxFor(m => m.Team, new { @type = "text", id = "team", Name = "query", @class = "form-control", placeHolder = "Team (Ej -> Barcelona)", autocomplete = "off" })

JS代码:

$('#team').typeahead({
            ajax: "/Home/AutocompleteTeam",
            responseText: [
                $('#team').val()        
            ]
        });

C#代码:

public ActionResult AutocompleteTeam(string query)
    {

        List<string> teams = new List<string>();
        List<TeamServiceModel> teamsService = teamService.ListTeamsByQuery(query);
        foreach (var team in teamsService)
        {
            if(team.Name.Equals("DEFAULT"))
            {
                continue;
            }
            else
            {
                teams.Add(team.Name);
            }             
        }
        return Json(teams, JsonRequestBehavior.AllowGet);
    }

返回我通过查询过滤的列表的服务正在运行。

【问题讨论】:

    标签: c# jquery asp.net-mvc bootstrap-typeahead


    【解决方案1】:

    Typeahead 已经过滤了结果。您可以进行 ajax 调用以获取所有团队(返回一个数组)并在 typeahead 中使用数组值设置“本地”字段。

    在此处查看更多信息http://www.bootply.com/ljIOxm3qDi

    【讨论】:

    • 我的问题是返回给控制器的数据。 model.team 为空,我不知道为什么。谁能帮帮我?
    • 将 Name = "query" 更改为 Name="Team"。当值发布到服务器端时,输入必须具有 name="Team"
    • 天哪!多么可怕的错误!!非常感谢亚历山德鲁!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多