Ajax请求ASP.NET MVC控制器返回500 - 内部服务器错误。
Ajax请求ASP.NET MVC控制器返回500 - 内部服务器错误。
我有一个视图上的两个select
:
第一个表示州,当我选择它时,我想执行carregarCidades
函数来加载该州的城市,然后将它们加载到另一个select
中。这是函数:
function carregarCidades() { var url = "@Url.Action("CarregarCidades", "Usuario")"; var estado = $("#comboEstado").find(":selected").text(); $.get(url, { pEstado: estado }, function (cidades) { $("#comboCidade").html(""); // clear before appending new list $.each(cidade, function (i, cidade) { $("#comboCidade").append( $('').val(cidade.id_cidade).html(cidade.cidade)); }); }); }
现在,这是UsuarioController
中的CarregarCidades
操作:
public ActionResult CarregarCidades(string pEstado) { string cCidades = oVFP.BuscaCidade(pEstado); DataSet dsC = new DataSet(); dsC.ReadXml(new StringReader(cCidades)); JsonResult result = Json(dsC.Tables["curretorno"]); return result; }
我正在调试操作,显然一切都很好:
但是,在操作返回Json结果后,回调函数在jquery代码中没有被调用,并且我在控制台中得到了500个内部服务器错误。
admin 更改状态以发布 2023年5月23日
您需要将JsonAllowRequestbehavior
参数设置为AllowGet
,默认值是DenyGet
:
JsonResult result = Json(dsC.Tables["curretorno"],JsonRequestBehavior.AllowGet);
您可以在这篇文章中了解为什么需要它。