如何将两个参数传递给jsonpCallback

时间:2012-05-28 06:24:05

标签: jquery json

嗨下面是代码,其中通过jjery中的ajax调用我调用函数1:“setEmailAFriendCount”,其中我们发送的变量有json数据类型但是我想从ajax调用调用相同的函数但是需要发送额外的字符串它的参数。

我很困惑,如何发送一个。 P

function getEmailAFriendCountDynamic(ArticleURL, Id) {
        alert('Hi');
        var location = ArticleURL;
        if (location.indexOf('?') >= 0) {
            location = location.substring(0, location.indexOf('?'));
        }

        $.ajax({
            url: 'http://contactimporter.mercola.com/EmailArticleCount.aspx?url=' + location,
            dataType: "jsonp",
            jsonpCallback: "setEmailAFriendCount"
        });
    }
Function 1:

function setEmailAFriendCount(json) {
        $('#MyTextbox').text(json.count);
    }
Function 2:
    function setEmailAFriendCount(json,emailtofrdclientid) {
        $('#' + emailtofrdclientid + '').text(" : " + json.count);
    }

2 个答案:

答案 0 :(得分:0)

回调参数在服务器端创建。如果你想返回更多,那么一个param会返回一个 json 对象,其中包含所需数量的参数。返回应该获取该对象并正确解析它。 为了向服务器发送多参数,发送一个json对象并将其传递给data属性。

$.ajax({
  type: "[GET/POST]",
  url: "[your url]",
  data: { name: "John", location: "Boston" }, //your object here
  success: function(data) {
    //parse your json return data here
  }
});

此处有关jQuery ajax的更多信息。

答案 1 :(得分:0)

function getEmailAFriendCountDynamic(ArticleURL, Id) {
        alert('Hi');
        var location = ArticleURL,
            self = this;
        if (location.indexOf('?') >= 0) {
            location = location.substring(0, location.indexOf('?'));
        }

        $.ajax({
            url: 'http://contactimporter.mercola.com/EmailArticleCount.aspx?url=' + location,
            dataType: "jsonp",
            jsonpCallback: "setEmailAFriendCount",
            success: function(jData) {
                 self.setEmailAFriendCount(jData, Id);
              }
        });
    }

Function 1:

function setEmailAFriendCount(json) {
        $('#MyTextbox').text(json.count);
    }
Function 2:
    function setEmailAFriendCount(json,emailtofrdclientid) {
        $('#' + emailtofrdclientid + '').text(" : " + json.count);
    }

我认为这段代码就是你要找的......