我有一个反映数据库中表格的MVC索引页面 其中一列是布尔值 我希望在索引页面中有一个复选框,当单击时,立即调用一个动作,该操作将在现场保存新状态而无需提交/刷新。
答案 0 :(得分:8)
您应该向onclick
添加input
个活动。你的剃须刀看起来类似于:
@Html.CheckBoxFor(m => m.Foo, new { onclick = "SomeMethod(this)" });
然后你的脚本看起来类似于(假设你有权访问jQuery;转换它应该是直截了当的):
function SomeMethod(checkboxInput) {
$.ajax({
type: 'POST',
url: Your/Action,
data: { newValue: checkboxInput.checked },
success: success,
dataType: 'json'
});
}
请注意参数名称:newValue
。
最后你的Action来处理请求:
public JsonResult Action(bool newValue) {
//Do your stuff!
//repository.Update();
}
请注意参数名称:newValue
。