使用隐藏 div 时选中的复选框不起作用

发布于 2024-11-08 20:09:20 字数 1362 浏览 0 评论 0原文

我有一个下拉菜单(lbProperty),当选定的值为 2 时,div1 显示,但最后 2 行带有 textbox1>textbox2 被隐藏。没关系,这就是工作。

当显示 div1 时,对 check 事件没有影响,我从未看到“Click!”。

有什么想法吗?

谢谢,

在主页中:

@model DPI_MVC3Razor.Models.MyModel
$(document).ready(function () {
    $('#div1').hide();

    $('#lbProperty').change(function () {
        var result = $(this).val();
        $('#div1').hide();
        if (result == 2)
            $('#div1').show();
    });

    if ($('#checkbox1').attr('checked')) {
        alert("Click!");
    }
});

<div id="div1">
    @Html.Partial("div1Content", Model)
</div>

在“div1Content”中

@model DPI_MVC3Razor.Models.MyModel

<script type="text/javascript">
    $(document).ready(function () {
        $(".jcsss1").hide();
    });
</script>

<table>
<tr>
    <td>AAAAA</td>
    <td>@Html.CheckBox("chk9", Model.IsOK)</td>       
</tr>
<tr class="jcsss1">
    <td>BBBBB</td>
    <td>@Html.TextBox("textbox1", Model.MyValue1)</td>
</tr>
<tr class="jcsss1">
    <td>CCCCC</td>
    <td>@Html.TextBox("textbox2", Model.MyValue2)</td>
</tr>
</table>

I have a dropdown (lbProperty), when the value selected value is 2, div1 is show but the 2 last line with textbox1 and textbox2 are hidden. It's ok that's work.

When div1 is show, there is no effect on the check event, I never see "Click!".

Any idea ?

Thanks,

In the main page :

@model DPI_MVC3Razor.Models.MyModel
$(document).ready(function () {
    $('#div1').hide();

    $('#lbProperty').change(function () {
        var result = $(this).val();
        $('#div1').hide();
        if (result == 2)
            $('#div1').show();
    });

    if ($('#checkbox1').attr('checked')) {
        alert("Click!");
    }
});

<div id="div1">
    @Html.Partial("div1Content", Model)
</div>

In "div1Content"

@model DPI_MVC3Razor.Models.MyModel

<script type="text/javascript">
    $(document).ready(function () {
        $(".jcsss1").hide();
    });
</script>

<table>
<tr>
    <td>AAAAA</td>
    <td>@Html.CheckBox("chk9", Model.IsOK)</td>       
</tr>
<tr class="jcsss1">
    <td>BBBBB</td>
    <td>@Html.TextBox("textbox1", Model.MyValue1)</td>
</tr>
<tr class="jcsss1">
    <td>CCCCC</td>
    <td>@Html.TextBox("textbox2", Model.MyValue2)</td>
</tr>
</table>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

り繁华旳梦境 2024-11-15 20:09:20

您尚未在检查事件中放置任何内容。

if ($('#checkbox1').attr('checked')) {
        alert("Click!");
    }

该代码仅位于 document.ready 中,这意味着它仅在 DOM 完成加载时执行一次。

你想要这个:

$('#checkbox1').click(function(){
    if ($(this).attr('checked')) {
        alert("Click!");
    }
});

You haven't placed anything on the check event.

if ($('#checkbox1').attr('checked')) {
        alert("Click!");
    }

this code is only within document.ready, meaning it only executes once when the DOM finishes loading.

You want this:

$('#checkbox1').click(function(){
    if ($(this).attr('checked')) {
        alert("Click!");
    }
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文