我创建了一个这样的代码来访问我的webservice中的方法AddNums。我通过webservice发送数据以获得输出。但它没有提供任何输出。
<html xmlns="http://www.w3.org/1999/xhtml">
<script src="scripts/Jquery%20v1.6.4.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#btn").click(function () {
alert('I have been clicked');
$.ajax({
type: "POST",
url: "http://localhost:5554/Service1.svc",
data: "{2,3}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
$("#output").text(msg.d);
}
});
});
});
</script>
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<input type="button" id="btn" value="Click Me" /> <br /> <br />
<span id="output"></span>
</form>
</body>
</html>
webserivce的实施。我已经在Visual Studio中使用内置客户端测试了webservice,它运行良好。
namespace WcfServiceTest
{
[System.Web.Script.Services.ScriptService]
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public CompositeType GetDataUsingDataContract(CompositeType composite)
{
if (composite == null)
{
throw new ArgumentNullException("composite");
}
if (composite.BoolValue)
{
composite.StringValue += "Suffix";
}
return composite;
}
[System.Web.Services.WebMethod(BufferResponse = false)]
public int AddNums(int val1, int val2)
{
return (val1 + val2);
}
}
}
答案 0 :(得分:1)
这是错误的方式
data: "{2,3}",
正确的方法是
data: {para1:value1,para2:value2},
用于将参数传递给外部文件。