Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript通过asp复选框使asp面板可见_Javascript_Asp.net_Panel_Checkbox - Fatal编程技术网

使用javascript通过asp复选框使asp面板可见

使用javascript通过asp复选框使asp面板可见,javascript,asp.net,panel,checkbox,Javascript,Asp.net,Panel,Checkbox,应使用java脚本函数通过asp复选框使asp面板可见 我的公司希望我更改特定页面上的编码,要求当您单击复选框时,面板应可见,但不应回发。 所以他们要求我使用JavaScript并实现这个需求 我尝试了这段代码,在我看来,JavaScript函数找不到id,因为面板将动态创建。有谁能帮我做这件事吗 重要事项:它应该停止后回来 我的代码是: <script type="text/javascript"> function fun1() { if (docu

应使用java脚本函数通过asp复选框使asp面板可见

我的公司希望我更改特定页面上的编码,要求当您单击复选框时,面板应可见,但不应回发。 所以他们要求我使用JavaScript并实现这个需求

我尝试了这段代码,在我看来,JavaScript函数找不到id,因为面板将动态创建。有谁能帮我做这件事吗

重要事项:它应该停止后回来

我的代码是:

<script type="text/javascript">
    function fun1()
    {
       if (document.getElementById("CheckBox1").checked == true)
       {
          document.getElementById("Panel3").visible = true;
       }
    }
</script>

<form id="form1" runat="server">
    <asp:Panel ID="Panel1" runat="server" Height="89px">
       <asp:CheckBox ID="CheckBox1" runat="server" OnClick="fun1()" />
    </asp:Panel>
    <br />
    <asp:Panel ID="Panel3" runat="server" Height="91px" Visible="False">
       <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
       <br />
       <br />
       <asp:Button ID="Button2" runat="server" Text="Button" />
    </asp:Panel>
    <br />
</form>

函数fun1()
{
if(document.getElementById(“CheckBox1”).checked==true)
{
document.getElementById(“Panel3”).visible=true;
}
}





面板是一个服务器端控件,当它作为DIV HTML元素呈现给浏览器时,您应该使用

function toogleDisplay(sender)
{
if(sender.checked)
    document.getElementById('<%= Panel3.ClientID %>').style.display = 'block';
else
  document.getElementById('<%= Panel3.ClientID %>').style.display = 'none';
}

它应该会帮助你

var panelControls = document.getElementById("<%=mypanel.ClientID%>").getElementsByTagName("input");

    for (var i = 0; i < panelControls .length; i++)
        panelControls [i].disabled = true;
var panelControls=document.getElementById(“”).getElementsByTagName(“输入”);
对于(var i=0;i
sorry document.getElementById(“Panel3”).visible=true;当前上下文中不存在名称“checkbox1”,请将其替换为checkbox1,实际上这是asp复选框控件的ID,您应该将其替换为复选框控件的ID。我的错误yogi。我把da的身份证弄错了,但还是不起作用。页面加载时带有“页面错误”复选框控件我是否应该在复选框控件内使用OnClick??您的帖子帮助我了解了很多情况。checkbox控件中没有OnClick用于触发服务器端事件,但这里我们希望在单击checkbox时触发客户端事件(toogleDisplay())。请详细说明在应用我的代码后您当前面临的错误。编译不会给yogi任何错误,但页面没有任何内容。我想这和瑜伽修行者的代码有关。我将其设置为Visible=“False”。虽然我点击了复选框,但它不会出现。
var panelControls = document.getElementById("<%=mypanel.ClientID%>").getElementsByTagName("input");

    for (var i = 0; i < panelControls .length; i++)
        panelControls [i].disabled = true;