我想从java脚本调用asp.net web服务并将参数传递给它。是否有任何代码示例或演示将帮助我实现? 提前谢谢
答案 0 :(得分:2)
JQuery的:
function AddLocation(ParentID) {
$.ajax({
type: "POST",
url: "../server.asmx/Save",
data: "{'ID':'0','ParentID':'" + ParentID + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
var item = document.createElement('option');
item.value = data.d.split("$")[0];
item.text = name;
//do stuff
}
});
}
答案 1 :(得分:2)
jQuery支持这种行为。你可以使用jQuery来执行ajax调用,如下所示。这种方法有两个成功和失败的回调函数。
function loadData()
{
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
url: 'methodurl',
success: methodSuccedded,
error: methodFailure
});
}
function methodSuccedded()
{
//do your logic.
}
function methodFailure()
{
//do your logic.
}
答案 2 :(得分:2)
您可以使用AJAX执行此操作,并从服务器获取响应作为JSON对象。
var xmlHttp = new ActiveXObject("Microsoft.XmlHttp");
var url = "Service1.svc/ajaxEndpoint/";
url = url + "Sum2Integers";
var body = '{"n1":';
body = body + document.getElementById("num1").value + ',"n2":';
body = body + document.getElementById("num2").value + '}';
// Send the HTTP request
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader("Content-type", "application/json");
xmlHttp.send(body);
// Create result handler
xmlHttp.onreadystatechange= function X()
{
if(xmlHttp.readyState == 4)
{
result.innerText = xmlHttp.responseText;
}
}
以JSON的形式获取响应可以帮助您将其变为对象,并且您可以通过JavaScript对其进行操作。
请参阅以下链接以供参考: http://blogs.msdn.com/b/alikl/archive/2008/02/18/how-to-consume-wcf-using-ajax-without-asp-net.aspx
http://dotnetslackers.com/articles/ajax/JSON-EnabledWCFServicesInASPNET35.aspx
答案 3 :(得分:1)
根据我的经验,以下链接是一个相当不错的方法。
http://encosia.com/2008/03/27/using-jquery-to-consume-aspnet-json-web-services/