我想使用JQuery顯示/隱藏基於選擇的下拉菜單的索引的div標籤,但它不工作。任何幫助將不勝感激。使用JQuery來顯示/隱藏控件取決於下拉列表選定的值
謝謝。
<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="drop_down_test.WebForm1" %>
<form runat="server" ID="frmReport">
<asp:DropDownList ID="ddlReports" OnChange="ShowHide()" AutoPostBack="true" runat="server"
onselectedindexchanged="ddlReports_SelectedIndexChanged">
<asp:ListItem Text="Please Select Report" Value="Default" />
<asp:ListItem Text="Report 1" Value="ReportValue1" />
<asp:ListItem Text="Report 2" Value="ReportValue2" />
</asp:DropDownList>
<br />
<br />
<div id="Report1Section">
<asp:Label ID="lblReport1" Text="This is for Report 1" runat="server" />
</div>
<br />
<div id="Report2Section">
<asp:Label ID="lblReport2" Text="This is for Report 2" runat="server" />
</div>
</form>
<script language="JavaScript" type="text/javascript" src="~/Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript">
function ShowHide() {
var ddlSelectedIndex = ('#<%= ddlReportName.ClientID %>').get(0).selectedIndex;
switch (ddlSelectedIndex) {
case 1:
$('#Report1Section').show('slow');
$('#Report2Section').hide('fast');
break;
case 2:
$('#Report1Section').hide('fast');
$('#Report2Section').show('slow');
break;
}
}
</script>
該方法非常有效。在你的評論中,你已經說過「有一種更現代的寫這一行的方式」:你是指$(function(){? – BigBadDom 2011-01-30 11:29:29