我正在开发Asp.Net MVC应用程序。
我在布局表单的某些视图中使用菜单的部分视图。我需要在此视图上使用JavaScript,但是它只能在第一次使用-在加载视图之后。后来-没有。局部视图是这样的:

@Scripts.Render("~/bundles/jquery")
@Html.CheckBox("IsChoosed", true, new { onclick = "FormReload();" })

<script>
    $(".IsChoosed").on("onchange", function () {
        FormReload();
    });

    var FormReload = new function ()
    {
        alert("FormReload");
    };

</script>


LayoutForm:

@Html.Partial("_ViewPartial")

@RenderBody()


设置复选框值时,在页面加载后显示警报消息。但是,当我改变价值之后,没有。
我试图将JavaScritp方法移至***。js文件并将其挂接到视图中,但其工作方式相同。
哪里有错误?

最佳答案

您的change事件未触发,因为您尝试附加到类.IsChoosed

尝试将您的change处理程序更改为:-

$("#IsChoosed").on("onchange", function () {
     FormReload();
});


因此#IsChoosed而不是.IsChoosed

编辑

另外,更改:-

var FormReload = new function ()


为此:

function FormReload()

09-25 21:49