0

我正在尝试使用 jQuery 的$.getJSON()函数进行服务器端 AJAX 调用:

$.getJSON() {
    url: "/my-server/some-url",
    success: function() {
        alert("Success!");
    }
}

Firebug 将此显示为 JavaScript 错误:

SyntaxError: missing ; before statement
[Break On This Error]   

$.getJSON() {

在阅读本教程时,我似乎正确地使用了它,传入了一个 URL,然后是一个成功回调。这个特定的 URL 不需要任何数据参数,所以我省略了它们。谁能发现我要去哪里?提前致谢!

4

5 回答 5

5

你想调用一个函数,使用getJSON 参数

$.getJSON("/my-server/some-url", function(data) {
        alert("Success!");
});

或者使用$.ajax传递一个对象:

$.ajax({
    url : "/my-server/some-url",
    dataType : 'json',
    success : function(data) {
            alert("Success!");
    }
});

要传递数据(例如{ dog: 1, cat: 4 }将转换为 URL 参数),您可以将对象直接传递给这两个函数:

$.getJSON("/my-server/some-url", { dog : 1, cat : 4 }, function(data) {
        alert("Success!");
});
// Or
$.ajax({
    url : "/my-server/some-url",
    dataType : 'json',
    data : { dog : 1, cat : 4 },
    success : function(data) {
            alert("Success!");
    }
});
于 2012-10-11T17:55:18.600 回答
2

你的代码是错误的。试试这个:

$.getJSON("/my-server/some-url",function() {
         alert("Success!");
     }
});

您的代码更接近该$.ajax方法。

$.ajax({
    url: "/my-server/some-url",
    success: function() {
        alert("Success!");
    }
});

编辑:

您还可以使用参数传递 URLdata参数。

http://api.jquery.com/jQuery.getJSON/

发送到服务器的数据作为查询字符串附加到 URL。如果 data 参数的值是一个对象(地图),它会在附加到 URL 之前转换为字符串并进行 url 编码。

$.getJSON("/my-server/some-url",{ dog: 1, cat: 4 },function() {
         alert("Success!");
     }
});

// Requests: "/my-server/some-url?dog=1&cat=4
于 2012-10-11T17:57:16.753 回答
1

您没有使用正确的语法。$.getJSON 是一个带参数的函数。第一个参数是强制性的,它是一个包含 url 的字符串。

$.getJSON(
    "/my-server/some-url", 
    data,
    function(callback) { 
        alert('success')
    }
);

$.getJSON 是 $.ajax 的快捷方式,与您编写的类似。$.ajax 将单个对象作为参数..

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: callback
});

来源:http ://api.jquery.com/jQuery.getJSON/

于 2012-10-11T18:00:16.660 回答
0

http://api.jquery.com/jQuery.getJSON/

$.getJson('url', function(data) {
   //do stuff with data
});
于 2012-10-11T17:57:34.807 回答
0

.getJSON函数是函数.ajax的简写

jQuery.getJSON( url [, data] [, success(data, textStatus, jqXHR)] )

$.getJSON("/my-server/some-url", function() {
  //Success
  alert("success");
});
于 2012-10-11T17:58:40.893 回答