C# 基于下拉列表显示/隐藏按钮
目前我有一个aspx页面,其中包含一个下拉列表和四个按钮。 根据下拉列表中的选择,将显示按钮的组合 我目前已经实现了这一点,因此当用户进行选择时,我使用AutoPostBack和selectedChanged服务器端事件来确定要显示哪些按钮,然后在此方法中设置这些按钮的Visible属性 由于这个事实,我不认为这是一个很好的解决方案,因为整个页面都在发回。我更喜欢使用JSON来实现这一点 我做了以下尝试,但似乎不起作用:C# 基于下拉列表显示/隐藏按钮,c#,asp.net,json,C#,Asp.net,Json,目前我有一个aspx页面,其中包含一个下拉列表和四个按钮。 根据下拉列表中的选择,将显示按钮的组合 我目前已经实现了这一点,因此当用户进行选择时,我使用AutoPostBack和selectedChanged服务器端事件来确定要显示哪些按钮,然后在此方法中设置这些按钮的Visible属性 由于这个事实,我不认为这是一个很好的解决方案,因为整个页面都在发回。我更喜欢使用JSON来实现这一点 我做了以下尝试,但似乎不起作用: $(document).ready(function () {
$(document).ready(function () {
jQuery("#<%= MyDropdownList.ClientID %>").change(function () {
updateAvailableButtons(jQuery(this).val());
});
});
function updateAvailableButtons(selectedItemId) {
jQuery("h2").html("selectedItemId:" + selectedItemId);
jQuery.getJSON("MyPage.aspx/GetAvailableButtons?" + Id, function (data, textStatus) { debugger; });
}
我以前从未使用过JSON,因此,如果这还远远不够,我深表歉意。类似的任务可以使用JavaScript完成。问题是您需要使用html控件而不是asp.net按钮控件,以便可以在客户端操纵表单 我想你们的意思是jQuery而不是json在从服务器获取json数据之后,你们必须解析结果数据并向用户显示结果。您必须在调试器行执行此操作。
protected void GetAvailableButtons(int selectedItemId)
{
//based on the id here then then I show hide certain buttons.
button1.Visible = true;
button2.Visible = false;
button3.Visible = false;
button4.Visible = false;
}