我遇到问题,在从控制器返回到视图后,模式窗口在我的浏览器中弹出。这里的窗口说什么(在Chrome):MVC5防止从控制器返回时弹出模式窗口
它包含了从Index.cshtml网页的HTML代码。
这里是我的控制器代码:
public ActionResult Save(Events changedEvent,FormCollection actionValues)
{
string action_type = actionValues["!nativeeditor_status"];
var eventText = actionValues["text"];
var eventStart = actionValues["start_date"];
var eventEnd = actionValues["end_date"];
try
{
switch (action_type)
{
case "inserted":
if (User.IsInRole("Admin"))
db.Event.Add(changedEvent);
Send(eventText, eventStart, eventEnd);
break;
case "deleted":
//changedEvent = db.Event.SingleOrDefault(ev => ev.Id == source_id);
changedEvent = db.Event.SingleOrDefault(ev => ev.text == eventText);
db.Event.Remove(changedEvent);
break;
default: // update
//changedEvent = db.Event.SingleOrDefault(ev => ev.Id == source_id);
changedEvent = db.Event.SingleOrDefault(ev => ev.text == eventText);
UpdateModel(changedEvent);
break;
}
db.SaveChanges();
}
catch (Exception)
{
action_type = "error";
}
return RedirectToAction("Index", "Home");
}
这里是我的Index.cshtml网页,处理保存到数据库的代码:
function init() {
var dp = new dataProcessor("/Home/Save");
dp.init(scheduler);
dp.setTransactionMode("POST", false);
}
我还是相当新MVC并完成了一些教程,但我从来没有遇到过这种行为。我想我必须处理控制器的回调,但我所有的搜索都没有收到任何东西。我希望来自这个美好社区的人能够指引我走向正确的方向。
感谢您花时间阅读!
搜索你的代码alert(',看起来好像有人在做js调试并忘记删除它 – Pete
我从你的代码中使用Asynchronous POST(即ajax post方法)的东西,那就是响应不是原因重定向到索引页面,而是显示来自索引页面的字符串内容警报(作为@Pete注释)。 –