将客户端复选框单击处理程序添加到 Razor 视图

Max*_*lov 5 unobtrusive-javascript razor asp.net-mvc-3

id="IsRecurring"当 Razor 视图发送到浏览器时,以下标记会生成一个复选框类型的输入。

<div class="editor-label">
    @Html.LabelFor(model => model.IsRecurring)
</div>

<div class="editor-field">
    @{
        @Html.EditorFor(model => model.IsRecurring)
    }
</div>
Run Code Online (Sandbox Code Playgroud)

我需要根据复选框的选中状态显示/隐藏其他标记块。

最MVC3的方式是哪一种?

我的计划是在 div 上方添加以下脚本:

<script type="text/javascript">
    $("#IsRecurring").click(function () {
        do show hide;
    });
</script>
Run Code Online (Sandbox Code Playgroud)

我的视图标记中放置脚本的适当位置在哪里?有没有更好的方法可以引用IsReccuring复选框,而不是提前知道它会有什么 Id?

Fer*_*ndo 3

隐藏/显示是一种我将使用脚本的行为,在复选框中添加一个类:

@Html.CheckBoxFor(model => model.IsRecurring, new {@class "recurring"})


//event
$(".recurring input:checkbox").click(function () {
                   //hide/show
                });
Run Code Online (Sandbox Code Playgroud)