使用jQuery接收DataSet (xml)
本文关键字:xml DataSet jQuery 接收 使用 | 更新日期: 2023-09-27 18:13:22
我有这个示例代码在jQuery中连接到我的WebService
发送文本,接收文本。它的作品非常好。
<html lang="en-US">
<head>
<meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" />
<meta name="viewport" content="width=device-width" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
//var WS_URI = 'http://10.0.0.5/WS_Catalog_SQL/Service1.asmx/GetItem';
var WS_URI = 'http://10.0.0.5/WS_Catalog/Service1.asmx/GetItem';
var MAKAT ;
function Look() {
MAKAT = document.getElementById("txt").value.toString();
$.ajax({
ServiceCallID: 1,
url: WS_URI,
type: 'POST',
data: '{"Makat": "' + MAKAT + '"}',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success:
function (data, textStatus, XMLHttpRequest) {
//document.writeln(data.d);
$("#RES").text((data.d).toString());
},
error:
function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
}
</script>
</head>
<body >
<br />
<button onclick="Look();">Press me</button>
<input id="txt" value="1111"/>
<br />
<p id="RES">res</p>
</body>
</html>
我的WebService代码:
[WebMethod]
public DataSet GetItem(string Makat)
{
dsView = new DataSet();
OpenConnection();
SQL = "select Item,Des from MyTbl where Item = '" + Makat + "'";
dsView = new DataSet();
adp_SQL = new SqlDataAdapter(SQL, Conn_SQL);
adp_SQL.Fill(dsView, "MyTbl ");
adp_SQL.Dispose();
if (dsView.Tables["MyTbl "].Rows.Count >= 1)
{
return dsView;
}
else
{
return null;
}
}
现在我需要接收数据集(xml),
我建立WebService (c#)接收文本和发送数据集
但是jQuery不起作用
我试试这个:
contentType: "text/xml",
dataType: "text",
并得到这个错误:
POST http://10.0.0.5/WS_Catalog_SQL/Service1.asmx/GetItem 500 (Internal Server Error) jquery.min.js:130
c.extend.ajax jquery.min.js:130
Look (index):14
onclick
我的头骨折了两天,似乎找不到解决办法....
尝试更改请求对象的数据类型:
contentType: "text/xml",
dataType: "text",