【发布时间】:2015-03-04 14:51:29
【问题描述】:
我有一个隐藏字段的视图
@Html.HiddenFor(model => model.Driver.ID, new { htmlAttributes = new { id = "driver" } })
我有一个控制器,它带有一个我想调用的方法,传递该字段“驱动程序”,但调试时我发现这个方法甚至没有被调用。
public string GetEditWarningMessage(int? driverID)
{
Driver driver = unitOfWork.DriverRepository.Get().Where(d => d.ID == driverID).FirstOrDefault();
string message = null;
if(!driver.Status.Equals("A"))
{
message = "This driver is assigned to current or future schedule movements";
}
return new JavaScriptSerializer().Serialize(message);
}
最后是javascript,我确定这是问题的根源
$().ready(function () {
$("#driver").change(function () {
$.get("../GetEditWarningMessage/" + $(this).val() + '?' + $.now(), function (response) {
var warning;
warning = $.parseJSON(response);
});
$("form").submit(function () {
var performEdit = false;
if (warning != null) {
performEdit = confirm(warning);
return performDelete;
}
});
});
});
基本上,如果我从 GetEditWarningMessage() 传递的消息为空,我不希望弹出窗口出现,否则让它弹出并传递警告消息。
非常感谢,谢谢大家
【问题讨论】:
-
有什么改变隐藏字段的值吗?如果没有,那么“更改”方法根本不会被击中......
-
不,不是,它只是一个对用户隐藏的静态字段,那么除了“更改”我还能使用什么?
标签: c# jquery model-view-controller