我需要将存储在文件中的数字列表带入网页。我用 Visual Studio C# 编写了一个 Web 服务来读取文件并响应内容。如果我将 Web 服务的 URL 放入浏览器 http://MyComputer /wcfService3_deploy/RestServiceImpL.svc/json/123 它会显示一个 json 结果:{"JSONDataResult":"9781770494138"}(文件中只有一个数字)。
现在,我需要从我的页面调用该服务。不幸的是,网络服务与我的网页在不同的计算机上,所以我需要将 jsonp 与 ajax 一起使用。
当我尝试通过 javascript 调用 Web 服务时,它永远不会访问该服务。我在调用中添加了一个错误参数,它报告“[object object] 错误”
function myFunction() {
var data = "datatext";
document.getElementById("response").innerHTML = "In MyFunction";
$.ajax({
type : "GET",
datatype : "jsonp",
url : "http://MyComputer/wcfService3_deploy/RestServiceImpL.svc/json/123?callback=jsonpCallback",
crossDomain : "true",
jsonpCallback : jsonpCallback(data),
success : jsonpCallback(data)
});
/*document.getElementById("response").innerHTML = "AfterAjax";*/
};
function jsonpCallback(data) {
document.getElementById("response").innerHTML =data;
};
</script>
<p id="response">Old Text</p>
<button type="button" onclick="myFunction()">Click Me!</button>
我知道我在这里有太多次jsonpCallback,并且将数据声明为变量没有意义。将回调放入 url 与 jsonpCallback 参数与 success 参数有什么区别?如果我不声明数据,它不会让我将它用作参数的参数。如何指定将包含返回结果的变量的名称?
感谢您的耐心等待