我正在使用具有销售系统的asp.net核心的Web应用程序(MVC)。
在我的销售订单创建中,我有一个字段,当用户开始键入时,建议要选择的文本。问题是:我需要用户选择文本时,与该信息相关的其他字段会自动完成。
我尝试实现我的控制器并查看(如下所示),但我唯一能做的就是建议字段#searchCNPJ,而无需填写#nomecliente
控制器
public IactionResult AutoComplete_Cliente()
{
var name = HttpContext.Request.Query["term"].ToString();
var cnpj = _context.Juridicos.Where(pf => pf.CNPJ.Contains(name)).Select(pj => pj.CNPJ).ToList();
return Ok(cnpj);
}
查看
<div class="form-row mt-2">
<div class="col col1 col-sm-3 disabled">
<label class="control-label">CNPJ/CPF CLIENTE</label>
<input id="searchCNPJ" type="text" name="SearchString" class="form-control" placeholder="" />
</div>
<div class="col col3 col-sm-9">
<label class="control-label">NOME CLIENTE</label>
<input id="nomecliente" class="form-control disabled" />
</div>
</div>
@section Scripts{
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$(function () {
$("#searchCNPJ").autocomplete({
source: '/Pedidos/AutoComplete_Cliente'
});
});
</script>
}
我也为控制器尝试了以下代码,但是我不完全知道如何在我的视图中实现
public IactionResult AutoComplete_Cliente(string cpf)
{
var name = HttpContext.Request.Query["term"].ToString();
var cnpj = _context.Juridicos.Where(pj => pj.CNPJ.Contains(name)).Select(pj => new SelectListItem { Value = pj.CNPJ,Text = pj.RAZAO_SOCIAL,}).ToList();
return Ok(cnpj);
}