Как автоматически получить значение на основе первого текстового поля в MVC
У меня есть текстовое поле для ввода идентификатора и еще одно текстовое поле для получения имени человека, имеющего идентификатор в первом текстовом поле. Но идентификатор и имя находятся в другой таблице под названием students. Здесь мое требование заключается в том, что когда я ввожу идентификатор в текстовое поле, мне нужно получить имя студента во втором поле текстового поля. Это мой контроллер
public async Task<ActionResult> Index() { var result = (from pm in db.Details join d in db.Students on pm.Id equals d.ID select new DetailsList { Id = d.ID, Name = d.FirstName, Cash=pm.Cash, Date = pm.Date }).ToList(); return View(result); }Это моя часть контроллера, где я объединил две таблицы в класс модели под названием DetailsLists
В моем представлении страница
@model IEnumerable<A.Models.DetailsList>
<table> <tr style="height:40px"> <th style="width:120px;"> ID </th> <td style="height:30px;"> <input type="text" class="form-control"/> </td> </tr> <tr style="height:40px"> <th style="width:120px;"> @Html.DisplayNameFor(model=>model.FirstName) </th> <td> <input type="text" class="form-control" /> </td> </tr> <td> <p> @Html.ActionLink("Create New", "Create") </p> </td> </tr> </table>
можно либо ввести идентификатор, либо отобразить все идентификаторы в выпадающем списке, и при выборе идентификатора он должен отображать имя во втором текстовом поле.
Что я уже пробовал:
Я новичок в mvc, и я не получил правильного способа выполнить задачу, которая мне нужна, может ли кто-нибудь помочь мне??
F-ES Sitecore
Гугл "функции onblur AJAX-вызов" и "звонок в MVC действий Аякса" и поставить два вместе. По сути, вы используете событие onblur для вызова действия mvc, передавая значение поля id textbox вашему действию, а затем обрабатываете результат. Есть много примеров использования ajax и mvc, если вы посмотрите, это не служба написания домашних заданий.