【发布时间】:2020-12-04 07:59:25
【问题描述】:
似乎调试器根本没有进入success函数。我试图填充的下拉列表是 /Dokument/Dokument 路线中模式的一部分,当我按下按钮时,我会得到一个带有某些字段的模式。其中一个字段是必须从 Tipi 表中获取值的下拉列表。在下拉列表中,我什至什么都看不到消息
路线配置
namespace Archieve1
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Login", id = UrlParameter.Optional }
);
}
}
}
AJAX 脚本
script type="text/javascript">
$(document).ready(function () {
$.ajax({
type: "GET",
url: "/NgarkoDokumentController/GetTipi",
data: "{}",
success: function (data) {
var s = '<option value="-1">Selektoni Tipin</option>';
for (var i = 0; i < data.length; i++) {
s += '<option value="' + data[i].Id_Tipi + '">' + data[i].Emri_llojit + '</option>';
}
$("#tipiDropdown").html(s);
}
});
});
</script>
控制器方法
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.UI.WebControls;
namespace Archieve1.Controllers
{
public class NgarkoDokumentController : Controller
{
public ActionResult Dokument()
{
return View();
}
// GET: NgarkoDokument
public ActionResult GetTipi()
{
Test_kristiEntities db = new Test_kristiEntities();
return Json(db.Tipi.Select(x => new
{
Id_Tipi = x.Id_Tipi,
Emri_llojit = x.Emri_llojit
}).ToList(), JsonRequestBehavior.AllowGet);
// return View();
}
}
}
我用一些表构建的模型
namespace Archieve1.Models
{
public class NgarkoDokument
{
public Dokumenti Dokumenti { get; set; }
public Fusha_Indeksimit FushaIndeksimit { get; set; }
public Vendndodhja_Fizike Vendndodhja_fizike { get; set; }
public IEnumerable<Tipi> Tipi { get; set; }
}
}
这里是html
@model Archieve1.Models.NgarkoDokument
<select title="Lloji i dokumentit" name="lloji" class="form-control col-md-3 box" id="tipiDropdown"> </select>
【问题讨论】:
-
好了,开始调试吧。首先,检查
/NgarkoDokumentController/GetTipi是否真的返回了你所期望的。最简单的检查方法是使用浏览器请求 URL。其次,在你的success回调函数中添加console.log(data);,看看你的AJAX请求是否正确接收数据。 -
我开始调试,它根本没有进入成功函数,我得到这个错误 ::44365/NgarkoDokumentController/GetTipi?{}:1 加载资源失败:服务器响应状态为 404 () 。我现在可以做什么建议?
-
这告诉我们路由
/NgarkoDokumentController/GetTipi无法解析。如果您在GetTipi()中设置断点,它可能也永远不会被命中?您能否添加有关控制器方法的更多详细信息,即控制器本身和您的路由配置? -
是的,它根本不进入
-
好的,所以路由是 /Dokument/Dokument 控制器名称是 NgarkoDokumentController 模型名称是 NgarkoDokument 函数名称是 GetTipi 正在构建的表单是当我单击 / 中的按钮时打开的模式的一部分文档/文档在模式中,我有一个下拉列表,我试图用 ajax 填充
标签: c# asp.net .net asp.net-mvc asp.net-mvc-5