Jquery Ajax学习实例6 向WebService发出请求,返回DataSet(XML) 异步调用

一、WebService.asmx:
  处理业务数据,在GetDataSet()方法中产生DataSet(XML)数据,供JqueryRequest.aspx调用,代码如下:

代码如下:

  [WebMethod] 
public DataSet GetDataSet() 
{ 
DataSet ds = new DataSet(); 
DataTable dt = new DataTable(); 
dt.Columns.Add("Name", Type.GetType("System.String")); 
dt.Columns.Add("Password", Type.GetType("System.String")); 
DataRow dr = dt.NewRow(); 
dr["Name"] = "小花"; 
dr["Password"] = "aaaaaaaaa"; 
dt.Rows.Add(dr); 
dr = dt.NewRow(); 
dr["Name"] = "小兵"; 
dr["Password"] = "bbbbbbbbb"; 
dt.Rows.Add(dr); 
ds.Tables.Add(dt); 
return ds; 
}

二、AjaxRequest.aspx
  通过点击按钮来请求WebService.asmx的 GetDataSet()方法,获取XML数据对象。代码如下:

代码如下:

//返回DataSet(XML) 
$(document).ready(function() { 
$('#btnDataset').click(function() { 
$.ajax({ 
type: "POST", 
url: "WebService.asmx/GetDataSet", 
data: "{}", 
dataType: 'xml', //返回的类型为XML 
success: function(result) { //成功时执行的方法 
//捕获处理过程中的异常并输出 
try { 
$(result).find("Table1").each(function() { 
$('#dd').append($(this).find("Name").text() + " " + $(this).find("Password").text()); 
}); 
} 
catch (e) { 
alert(e); 
return; 
} 
}, 
error: function(result, status) { //出错时会执行这里的回调函数 
if (status == 'error') { 
alert(status); 
} 
} 
}); 
}); 
});

相关推荐