jQuery .change事件不触发asp.net MVC CheckBoxFor

本文关键字:asp net MVC CheckBoxFor change 事件 jQuery | 更新日期: 2023-09-27 18:11:40

下面是我试图使用的jQuery代码,使一个隐藏的文本框可见。然而,当点击文本框保持隐藏,并没有alerts将火。

对于这个复选框,我尝试了.click, .change.mousedown,但没有一个工作。

这是jQuery

$('#OverrideRegionInd').click(function () {
    alert("here");
    alert($(this).is(':checked'));
    if ($(this).is(':checked')) {
        $('#territoryName').html("");
        $('#Region').val("");
        $('#Region').show();
    } else {
    }
});

下面是视图中的代码。这是一个ASP MVC 3网站

    <div class="M-editor-label">
        Override Territory Manually?
    </div>
    <div class="M-editor-field" style="padding-right:190px;padding-top:5px;">
        @Html.CheckBoxFor(Model => Model.OverrideRegionInd)
    </div>

编辑

这是渲染后的整个<div>

    <div class="M-editor-field" style="padding-right:190px;padding-top:5px;">
        <input data-val="true" data-val-required="The Override Territory? field is required." id="OverrideRegionInd" name="OverrideRegionInd" type="checkbox" value="true" /><input name="OverrideRegionInd" type="hidden" value="false" />
    </div>

jQuery .change事件不触发asp.net MVC CheckBoxFor

您发布的代码(以及生成的HTML) 完全相同(请参阅此处)

唯一的区别,是JSFiddle将jQuery包装成document.ready调用,试试:

$(function () {
    $('#OverrideRegionInd').click(function () {
       //click function code
    });
});