现在我有一个包含用户的列表框。但是在这种情况下,我需要一个过滤器函数,在该函数中,我将能够编写“ jo”并在列表中获取所有以“ jo”开头的用户。这似乎是比我想象的更大的问题。我已经尝试了vid jquery和从控制器。就像您可以在下面看到的,我的控制器方法填充列表的是GET方法,我是否需要它的POST变量?
如果可能的话,我想让用户实时进入列表。有可能吗?
*CONTROLLER*
[HttpGet]
public ActionResult Meeting(string txtValue)
{
var filteredUsers = SearchUser(txtValue);
var users = new List<SelectListItem>();
foreach (var item in filteredUsers)
{
users.Add(new SelectListItem
{
Text = item.UserFirstname + " " + item.UserLastname,
Value = item.UserID
});
}
var meetingView = new MeetingViewModel
{
Users = users,
SelectedUsers = new List<SelectListItem>()
};
return View(meetingView);
}
*FILTER FUNCTION IN CONTROLLER*
public List<UserModel> SearchUser (string txtValue)
{
var ctx = new DB();
var users = ctx.Users
.Where(u => u.UserFirstname.Contains(txtValue) ||
u.UserLastname.Contains(txtValue) ||
txtValue == null).ToList();
return users;
}
*VIEW*
<div>
@using (Html.BeginForm("Meeting", "Meeting", FormMethod.Get))
{
@Html.TextBox("txtValue", null, new { placeholder = "Input
value" })
<input type="button" value="Search" />
}
</div>