I have a form in which I make a query to an API using jquery. The query returns the data and populates the textboxfor with this data:
$.getJSON("//viacep.com.br/ws/" + cep + "/json/?callback=?", function (dados) {
if (!("erro" in dados)) {
//Atualiza os campos com os valores da consulta.
$("#Logradouro").val(dados.logradouro);
$("#Bairro").val(dados.bairro);
$("#Cidade").val(dados.localidade);
$('#Estado option[value="' + dados.uf + '"]').attr({ selected: "selected" });
}
<div class="form-group col-md-2">
@Html.LabelFor(m => m.Cidade)
@Html.TextBoxFor( m => m.Cidade, new { @class = "form-control rounded", @placeholder = "Cidade do Condutor" })
@Html.ValidationMessageFor(m => m.Cidade, "", new { @class = "text-danger" })
</div>
[Authorize]
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Add(CondutorViewModel condutor)
{
if (!ModelState.IsValid)
{
return View(condutor);
}
var result = CondutorRepositoryUI.GetInstance().AddOrUpdate(condutor);
TempData["AtualizacaoCondutor"] = result.Mensagem;
return RedirectToAction("Index");
}
When I do the POST to the form the fields that were filled by jquery return null, although they appear on the screen the other fields that were typed appear normal.