0

特定のコントロールを使用できる div のみを表示したいのですが、それ以外の場合は他のすべての div が非表示になります。

<script type="text/javascript">
    $(document).ready(function () {
        $('#<%= buttonRegister.ClientID %>').click(function (e) {
            e.preventDefault();
            var control = $('#<%= TextBoxDateOfAdmission.ClientID %>');
            var admissionValue = control.val();
            if (admissionValue == '') {
                // hide all the divs
                $(".wizard_menu div.wizard_body").hide();
                // i want to show only the div that has a control with id=TextBoxDateOfAdmission
                $('.wizard_menu div.wizard_body')
                                    .has(control).length ? $(".wizard_menu div.wizard_body").show() : $(".wizard_menu div.wizard_body").hide();
            }
        });
    });
</script>

注: HTML コードが長すぎるため、貼り付けられません。私は 5 つの div を持っており、class=wizard_menu
これを使用してコードをテストし、機能するかどうかを証明しました

$('.wizard_menu div.wizard_body')
         .has(control).length ? alert("true") : alert("false");

そして結果は真でした。
だから、今私はその中で利用可能な特定のコントロール(この場合はTextBoxDateOfAdmission)を持つdivのみを表示したい
更新:私のコードの結果は、展開されたすべてのdivを表示することです。ただし、特定のコントロールを使用できる div を 1 つだけ展開または表示したい

4

1 に答える 1

0

.show() を直接使用して問題を解決しました。

 $('.wizard_menu div.wizard_body')
                .has(control)
                .show();
于 2013-04-08T10:30:53.093 に答える