我是网络编程的新手,
我正在尝试设计一个搜索页面。
我想创建几个单选按钮,每次单击单选按钮将显示一个div
包含相关的搜索div。
并从那里对数据库进行查询(与帖子无关)
我该怎么做? 试图搜索它,并没有得到很好的答案。 我希望页面的更改将在服务器端而不是客户端。 附: 到目前为止,我一直在使用ajax控制套件。
感谢您的帮助。
答案 0 :(得分:0)
您只需要一个UpdatePanel,单选按钮和一个MultiView控件。
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div>
<asp:RadioButton ...
<asp:RadioButton ...
</div>
<asp:MultiView ID="mvAll" runat="server" ActiveViewIndex="-1">
<asp:View ID="vwFirst" runat="server">
</asp:View>
<asp:View ID="vwSecond" runat="server">
</asp:View>
...
</asp:MultiView>
</ContentTemplate>
</asp:UpdatePanel>
当所选单选按钮更改时,您只需将相关视图设置为活动
mvAll.SetActiveView(ViewIDYouNeed);
答案 1 :(得分:0)
您可以使用面板和更新面板完成此操作。
<asp:RadioButton ID="rdo1" AutoPostBack="true" GroupName="radios" runat="server" OnCheckedChanged="ShowDivs" />
<asp:RadioButton ID="rdo2" AutoPostBack="true" GroupName="radio2" runat="server" OnCheckedChanged="ShowDivs" />
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="pnl1" runat="server" Visible="false"></asp:Panel>
<asp:Panel ID="pnl2" runat="server" Visible="false"></asp:Panel>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="rdo1" />
<asp:AsyncPostBackTrigger ControlID="rdo2" />
</Triggers>
</asp:UpdatePanel>
然后,您将在后面的代码中处理ShowDivs方法中面板的Visible属性。
或者,您可以使用jquery / javascript来完成此任务。
<input type="radio" onClick="ShowDiv(1)" />
function ShowDiv(id) {
HideDivs();
$(id).show('slow');
}