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