使用jQuery中ajax方法访问web服务

说明: 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;

}

}

相关文章

$.AJAX()方法中的PROCESSDATA参数 在使用jQuery的$.ajax()方...
form表单提交的几种方式 表单提交方式一:直接利用form表单提...
文章浏览阅读1.3k次。AJAX的无刷新机制使得在注册系统中对于...
文章浏览阅读1.2k次。 本文将解释如何使用AJAX和JSON分析器在...
文章浏览阅读2.2k次。/************************** 创建XML...
文章浏览阅读3.7k次。在ajax应用中,通常一个页面要同时发送...