Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.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
C# 在HTML复选框上调用函数时,不使用C进行提交即可更改#_C#_Asp.net_Checkbox - Fatal编程技术网

C# 在HTML复选框上调用函数时,不使用C进行提交即可更改#

C# 在HTML复选框上调用函数时,不使用C进行提交即可更改#,c#,asp.net,checkbox,C#,Asp.net,Checkbox,我正在使用Visual Studio 2015创建一个ASP.NET网站。我有一个默认隐藏的DIV,如果用户选中复选框,我将尝试显示它。我想知道是否有一种方法可以使用C#在用户选中该框后立即显示DIV。如果不先提交表格,我似乎找不到识别状态变化的方法。我可以使用JavaScript轻松实现这一点,但这是针对uni分配的,需要在C#中实现功能。 这是复选框的HTML: <form id="form1" runat="server"> Limit Stations To My L

我正在使用Visual Studio 2015创建一个ASP.NET网站。我有一个默认隐藏的DIV,如果用户选中复选框,我将尝试显示它。我想知道是否有一种方法可以使用C#在用户选中该框后立即显示DIV。如果不先提交表格,我似乎找不到识别状态变化的方法。我可以使用JavaScript轻松实现这一点,但这是针对uni分配的,需要在C#中实现功能。 这是复选框的HTML:

<form id="form1" runat="server">
    Limit Stations To My Location<asp:CheckBox ID="limitOptions" runat="server" onClick="toggleOptions()" /> 
    <br /><br />
    <div id="locationOptions" runat="server" hidden="hidden">
        Radius (KM)<asp:TextBox ID="radius" runat="server" Text="100"></asp:TextBox>
        <asp:Button ID="updateList" runat="server" Text="Button" OnClick="updateList_Click"/>
    </div>

把车站限制在我的位置


半径(公里)
任何帮助都将不胜感激。

您可以使用C#in代码隐藏来实现这一点。将
OnCheckedChanged
事件添加到复选框中,并将
AutoPostBack
设置为true并处理更改。请注意,
面板
在HTML中变成了
div

<asp:CheckBox ID="limitOptions" runat="server" OnCheckedChanged="limitOptions_CheckedChanged" AutoPostBack="true" />

<asp:Panel ID="locationOptions" runat="server" Visible="false">
    Radius (KM) <asp:TextBox ID="radius" runat="server" Text="100"></asp:TextBox>
</asp:Panel>

半径(公里)
但是,这会导致回发,因此仅使用JavaScript可能是更好的选择

<asp:CheckBox ID="limitOptions" runat="server" onclick="toggleOptions()" />

<div id="locationOptions" runat="server" style="display: none">
    Radius (KM)<asp:TextBox ID="radius" runat="server" Text="100"></asp:TextBox>
</div>

<script type="text/javascript">
    function toggleOptions() {
        var id = '#<% =locationOptions.ClientID %>';
        if ($(id).css('display') == 'none') {
            $(id).slideDown('fast', function () { });
        } else {
            $(id).slideUp('fast', function () { });
        }
    }
</script>

半径(公里)
函数toggleOptions(){
变量id='#';
如果($(id).css('display')=='none'){
$(id).slideDown('fast',function(){});
}否则{
$(id).slideUp('fast',function(){});
}
}

谢谢@VDWWD。这正是我想要的,但在阅读了回帖后,我认为你是对的,我还是会使用JavaScript。谢谢你的及时回复。