У меня есть список клиентов, у которых есть имя и идентификатор, когда пользователь выбрал идентификатор клиента (cliente_id), который возвращает только имя (nombre_cliente), но я также хотел бы иметь идентификатор. Я использую автозаполнение в w3scools, которое можно найти здесь https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_autocomplete.
Вот соответствующая javascript часть
var clientesContratos = @Html.Raw(Json.Encode(Model.clientes.Select(x => x.nombre_cliente).ToList()));
autocomplete(document.getElementById("clienteContratoAutocomplete"), clientesContratos);
Вот соответствующая html / бритва.
<div class="form-row">
<div class="col-md-3 mb-3">
<div class="autocomplete" style="width:300px;">
@Html.Label("Cliente")
@Html.TextBox("selected_cliente_contrato", Model.selected_cliente_contrato, new { @id = "clienteContratoAutocomplete", @type = "text", @placeholder = "clientes", @class = "form-control" })
</div>
</div>
</div>
Вот мой подходящий asp. net mvc код.
public ActionResult Contrato(contratoBuscarModel contrato)
{
clienteContratosContext clienteContratosContext = new clienteContratosContext();
if (clienteContratosContext.GetAllClienteContratos(contrato.selected_cliente_id_contrato).Count > 1)//selected_cliente_id is always 0
{
//To do
}
return RedirectToAction("OpenContratoSelected", new { contrato.selected_numero_contrato });
}
Спасибо за помощь.