說明: ArrayList 中 存為對象CollegeDepartInfo 其屬性為:stirng CollegeDepartTitle 和 int CollegeDepartId 在javascript中 ddlDepart.options[ddlDepart.length]=new Option(n.CollegeDepartTitle,n.CollegeDepartId); Option的參數就是依據他們的。 最后重要的是: 類上方添加的 [ScriptService] 必須添加,否則ajax無法調用WebService
JS代碼:
$.ajax({
type: "POST",
//注明 返回Json
contentType:"application/json;utf-8",
//CollegeDepartWebServices.asmx web服務名 /GetCollegeDepart 方法名
url:"CollegeDepartWebServices.asmx/GetCollegeDepart",
//strDepartId 參數名稱 collegeId 參數值
data:"{strDepartId:"+collegeId+"}",
dataType:"json",
success:function(result){
var json=null
try
{
if(result)
{
//因為返回的是ArrayList 所以循環取出其中的值
$.each(result, function(i, n){
//ddlDepart 為下來菜單。循環的向下拉菜單中添加新的選項
ddlDepart.options[ddlDepart.length]=new Option(n.CollegeDepartTitle,n.CollegeDepartId);
});
}
}
catch(e)
{
alert("錯誤>>"+e.message);
return;
}
},
error:function(data)
{
alert(data.status+">>> "+data.statusText);
}
});
CollegeDepartWebServices.asmx.cs
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class CollegeDepartWebServices : System.Web.Services.WebService
{
public CollegeDepartWebServices()
{
//如果使用設計的組件,請取消注釋以下行
//InitializeComponent();
}
[WebMethod]
[System.Xml.Serialization.XmlInclude(typeof(CollegeDepartInfo))]
public ArrayList GetCollegeDepart(string strDepartId)
{
CollegeDepartBL.FlushCollegeDepartCache();
if (string.IsNullOrEmpty(strDepartId))
return null;
ArrayList myList = CollegeDepartBL.GetCollegeDepartListByCollegeID(int.Parse(strDepartId));
return myList;
}
}
上一篇 怎樣做一個聰明的站長?
下一篇 電腦桌面向右移動了,如何恢復?