使用asp.net复选框oncheckchanged事件隐藏div

时间:2011-10-18 10:04:33

标签: javascript asp.net checkbox

我试图使用asp.net复选框服务器控件来隐藏div。我为服务器控件添加了一个onclick javascript代码,但它似乎无法正常工作....任何建议?

    function hideDiv(obj) {

        if (obj.checked==true) {
            document.getElementById("divMap").style.visibility=true
        }
        else {
            document.getElementById("divMap").style.visibility = false
        }
    }

5 个答案:

答案 0 :(得分:2)

function hideDiv(obj) {
    if (obj.checked==true) {
        document.getElementById("divMap").style.display='block';
    }
    else {
        document.getElementById("divMap").style.display = 'none';
    }
}

或者您可以使用jquery

function hideDiv(obj) {
    if (obj.checked) {
        $("#divMap").show();
    }
    else {
        $("#divMap").hide();
    }
}

答案 1 :(得分:2)

这也可以在服务器端实现。

标记:

<asp:CheckBox id="chk" runat="server" AutoPostBack="true" />
<div id="div" runat="server"></div>

C#:

protected void chk_CheckedChanged(object sender, System.EventArgs e)
{
    switch ((sender.checked)) {
        case true:
            div.Visible = false;
            break;
        case false:
            div.Visible = true;
            break;
    }
}

答案 2 :(得分:0)

尝试使用以下代码而不是

document.getElementById("divMap").style.visibility = false
document.getElementById("divMap").style.visibility=true  




document.getElementById("divMap").style.display='none'
     document.getElementById("divMap").style.display='block'

答案 3 :(得分:0)

要在asp.net中访问和使用服务器端控件,您必须使用它的客户端ID(ClientID)属性。

function hideDiv(obj) {

    if (obj.checked==true) {
        document.getElementById("<%=YourControlID.ClientID %>").style.visibility=true
    }
    else {
        document.getElementById("<%=YourControlID.ClientID %>").style.visibility = false
    }
}

答案 4 :(得分:0)

从javascript用户执行服务器控制操作“&lt;%= control Name .ClientID%&gt;”

 function hideDiv(obj) {

        if (obj.checked==true) {
            document.getElementById('<%= divMap.ClientID%>').style.display = 'Block';
        }
        else {
            document.getElementById('<%= divMap.ClientID%>').style.display = 'None';
        }
    }