0
私はこのpluginを使用して、送信するフォーム内にオートコンプリートフィールドを作成します。私はフォームを送信するときを除いて、すべてokです。モデルのコントローラに渡されるフィールドはnullです。私は得たデータを返す方法を知らない。Typeaheadブートストラップはnullにモデル化するパラメータを渡します
私のコードの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);
}
私は、クエリによるフィルタリングてるリストを返しているサービスは働いている。
私の問題は、データがコントローラに返され、ここで多くを参照してください。 model.teamはnullですが、理由はわかりません。誰でも助けてくれますか? –
Name = "Query"をName = "Team"に変更します。値がサーバー側へのポスト入力の場合は、name = "Team"にする必要があります –
Oh my god!どのようなひどい間違い!本当にありがとうAlexandru! –