C# ASP.NET MVC 5,引导模式弹出未命中控制器方法
我正在使用asp.NETMVC5进行开发。我正试图用一些数据弹出modal以进行crud操作。我正在尝试用javascript方法弹出模式。之后,我单击我的控制器方法未命中的链接。屏幕转换为暗屏幕 视图:C# ASP.NET MVC 5,引导模式弹出未命中控制器方法,c#,javascript,jquery,asp.net-mvc,C#,Javascript,Jquery,Asp.net Mvc,我正在使用asp.NETMVC5进行开发。我正试图用一些数据弹出modal以进行crud操作。我正在尝试用javascript方法弹出模式。之后,我单击我的控制器方法未命中的链接。屏幕转换为暗屏幕 视图: <td class="text-right"> <a class="btn btn-info btn-xs" href="javascript:loadEditUser(@item.Id)"> <i class="fa fa-pencil"&
<td class="text-right">
<a class="btn btn-info btn-xs" href="javascript:loadEditUser(@item.Id)">
<i class="fa fa-pencil"></i>
</a>
</td>
<div class="modal fade" id="modalEditUser" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
</div>
局部视图:
这是我要弹出的局部视图
@using (Ajax.BeginForm("Create", "UserAdmin", new AjaxOptions { UpdateTargetId = "modalEditUser", OnSuccess = "UserEditSuccess" }))
{
@Html.AntiForgeryToken()
// Web controllers goes here
}
控制器:
public ActionResult EditUser(int id)
{
if (id == 0)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
var user = UserManager.FindById(id);
if (user == null)
{
return HttpNotFound();
}
var userRoles = UserManager.GetRoles(user.Id);
return PartialView("_Edit", new EditUserViewModel()
{
Id = user.Id,
UserName = user.UserName,
Email = user.Email,
FirstName = user.FirstName,
LastName = user.LastName,
phoneNumber = user.PhoneNumber,
RolesList = RoleManager.Roles.ToList().Select(x => new SelectListItem()
{
Selected = userRoles.Contains(x.Name),
Text = x.Name,
Value = x.Name
})
});
}
请帮我解决这个问题。
谢谢…尝试使用来自JS的服务器url调用
var serverUrl = "@Url.Content("~/")";
然后在JS调用中
var remoreUrl = serverUrl + "UserAdmin/Index";
一定要这样
var remoreUrl = serverUrl + "UserAdmin/Index";
而不是
var remoreUrl = serverUrl + "/UserAdmin/Index";
javascript控制台中有错误吗?控制台中没有任何问题。您不会显示实际使用的控制器方法。最好显示索引并创建方法。使用像Fiddler2这样的工具来检查发送到服务器或从服务器接收到的内容。您也可以在浏览器中简单地尝试URL,看看它们是否包含服务器错误。这都是很好的建议,但听起来它们好像是在调试环境(例如localhost环境)中测试的,因此它们现有的绝对URL现在应该可以用了。我怀疑问题出在其他地方:
var remoreUrl = serverUrl + "/UserAdmin/Index";