我有一个编辑器字段是一个复选框,当它从false更改为true并且表单已提交时,我需要跟踪复选框已更改并标记为true。它也必须是一个javascript或jquery函数。
<div class="editor-field">
@Html.EditorFor(model => model.IsPublic)
</div>
如果我需要更好地解释一下,请告诉我。我只是想不出如何解释。谢谢
答案 0 :(得分:1)
希望以下代码可以做到:
@Html.HiddenFor(model => model.IsPublicChanged) @*create special model field for handling change event*@
$().ready(function () {
//catch change event and assign value to hidden field
$("input[name=IsPublic]").on("change", function () {
$("input[name=IsPublicChanged]").val('true');
});
});
或者一些不同的js代码,如果你想看看复选框的值是否与其初始值相比发生了变化:
$().ready(function () {
var trackValue = $("input[name=IsPublic]").prop("checked");
$("form").on("submit", function () {
var actualValue = $("input[name=IsPublic]").prop("checked");
if (actualValue != trackValue) {
$("input[name=IsPublicChanged]").val('true');
}
});
});