当其他div可见时隐藏Div

时间:2009-07-22 08:03:29

标签: .net javascript jquery

我的aspx页面中有以下代码:

<div id="FormContainer">
                <div id="leftSection">
                    <h1>
                        Contact Us</h1>
                    <div id="intro">
                        <p>
                            Contact PLI</p>
                        <p>
                            &nbsp;</p>
                    </div>
                    <esp:contactus id="ContactUs" runat="server" />
                </div>
</div>

下面给出了来自我上面的用户控件( esp:contactus )的一些代码

    <div id="divMain" runat="server">
        <div class="leftColumn">
        <span id="ContactUs_lblFirstName" class="details">First name:<span class="asterisk" title="This field is mandatory">*</span></span>
        <input name="ContactUs$txtFirstname" type="text" maxlength="50" id="ContactUs_txtFirstname" />
        <span id="ContactUs_rfvFirstName" style="color:Red;visibility:hidden;">Please type your forename here</span>
        <span id="ContactUs_lblFamilyName" class="details">Family name:<span class="asterisk" title="This field is mandatory">*</span></span>
        <input name="ContactUs$txtFamilyName" type="text" maxlength="50" id="ContactUs_txtFamilyName" />
        <span id="ContactUs_rfvFamilyName" style="color:Red;visibility:hidden;">Please type your family name here</span>

        <span id="ContactUs_lblAddress1" class="details">Address 1<span class="asterisk" title="This field is mandatory">*</span></span>
        <input name="ContactUs$txtAddress1" type="text" maxlength="50" id="ContactUs_txtAddress1" />
        <span id="ContactUs_rfvAddress1" style="color:Red;visibility:hidden;">Please enter the first line of your address</span>
        <span id="ContactUs_lblAddress2" class="details">Address 2</span>
        <input name="ContactUs$txtAddress2" type="text" maxlength="50" id="ContactUs_txtAddress2" />

<asp:button id="btnSubmit" cssclass="submitBTN" text="Submit"
                onclick="Submit_Click" runat="server" />
        </div>
    </div>

<div id="divThanksmsg" runat="server">
        Thank you for your enquiry.
    </div>

如果您在我的usercontrol中看到提交按钮,则在验证所有上述字段后,它会显示thankyou div(divThanksmsg)。

当用户点击提交按钮时,它会在验证字段后验证所有表单我的thankyou div( divThanksmsg )可见。但是如果你在我的aspx页面中看到id为( intro )的上述div,则每次都可以看到它。我希望当我的感谢你的div可见时,这个div应该被隐藏。

请建议!

3 个答案:

答案 0 :(得分:2)

我看到你标记了div(divTanksmsg和divMain)在服务器上运行。 您可以通过将标记修改为

来初始化divThanksmsg以使其隐藏
<div id="divThanksmsg" visible="false" runat="server">

完成验证后,您可以执行以下操作:

divThanksmsg.Visible = true;
divMain.Visible = false;

答案 1 :(得分:1)

如果我理解正确,当你显示“divThanksmsg”时,你想要隐藏“intro”div。为此,您需要在“intro”-div上使用“runat = server”,然后在代码中的这一行:divThanksmsg.Visible = true;,您需要添加intro.Visible = false;

答案 2 :(得分:0)

您是否考虑过使用javascript来隐藏简介消息?在执行验证后注入一点。也许存储一个标志,以便您知道何时应该重新添加或删除该js。

但是,老实说,这听起来像是一种不应该在经过深思熟虑的设计中出现的情况。