0

チェックボックスであるeditorforフィールドがあり、それがfalseからtrueに変更され、フォームが送信されたときに、チェックボックスが変更され、trueとマークされていることを追跡する必要があります。また、javascript または jquery 関数である必要があります。

<div class="editor-field">
@Html.EditorFor(model => model.IsPublic)

</div> 

これをもっとよく説明する必要がある場合は、教えてください。他に説明する方法が思い浮かびません。ありがとう

4

1 に答える 1

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');
        }
    });     
});
于 2013-07-23T12:51:07.747 に答える