本文实例讲述了JQuery中ajax方法访问web服务。分享给大家供大家参考。具体分析如下:
说明: ArrayList 中 存为对象CollegeDepartInfo 其属性为:stirng CollegeDepartTitle 和 int CollegeDepartId 在javascript中 ddlDepart.options[ddlDepart.length]=new Option(n.CollegeDepartTitle,n.CollegeDepartId); Option的参数就是依据他们的。 最后重要的是: 类上方添加的 [ScriptService] 必须添加,否则ajax无法调用WebService
jquery代码部分:
$.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;
}
}
希望本文所述对大家的jquery程序设计有所帮助。
本文地址:https://www.stayed.cn/item/22342
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我