一、功能概述:其實就是很簡單的一個兩級的下拉式清單聯動。
二、開發詳解:
1.Information_Create.aspx頁面中使用JQuery Ajax實現下拉式清單兩級聯動。在這個頁面中是這樣實現的:
第一步:引入jquery包,代碼:<script src="../js/jquery/jquery.js" type="text/javascript"></script>
第二步:加上三個控制項(兩個用於聯動的dropdownlist和一個hiddenField用於儲存選擇的值),代碼:
<td>
所屬頻道/欄目:
</td>
<td>
<asp:DropDownList ID="ddlChannel" runat="server"></asp:DropDownList>
<asp:DropDownList ID="ddlSection" runat="server" onchange="GetType()">
<asp:ListItem Value="">請選擇</asp:ListItem>
</asp:DropDownList>
<asp:HiddenField ID="hidType" runat="server" />
</td>
第三步:編寫jquery js代碼,代碼:
<script type="text/javascript">
$(document).ready(function() {
$('#ddlChannel').change(function () //註冊ddlChannel的change事件
{
$.get( //調用jquery ajax中的get
'../../plug/AjaxRequest.aspx',//第一個參數表示需要請求的頁面
{
type:$("#ddlChannel").val(), //第二個參數表示需要給請求頁面傳送的參數。在請求頁面中可以使用Request["type"]和Request["state"]擷取。
state:1
},
function(data) //第三個表示一個得到資料的函數
{
$("#ddlSection").empty(); //將ddlSection清空
$(data).appendTo("#ddlSection") //使用appendTo資料追加到ddlSection控制項中
}
);
});
});
//這是一個當第二個dropdownlist在onchange的時候將值儲存到隱藏控制項中
function GetType()
{
$("#hidType").val($("#ddlSection").val());
}
</script>
2.AjaxRequest.aspx頁面是一個Ajax請求頁面,為了在以後使用ajax的時候都使用這個請求頁面,只是通過傳遞不同的state參數進行業務匹配,代碼:
//得到類型,這樣在以後的多個頁面中要使用不通業務的時候可以傳遞不同的state,由switch進行匹配
state = int.Parse(Request["state"].ToString());
switch (state)
{
case 1:
//設定資料
break;
case 2:
//設定資料
.
.
.
}
註:這個只是我在項目中多jquery ajax的一個使用,有更多的介紹可以查看我的下載中的jquery api 地址:
http://download.csdn.net/source/2423908