尝试加载JSONP时未捕获的ReferenceError

时间:2014-11-18 09:46:30

标签: javascript json jsonp

我正在尝试使用此脚本加载外部JSONP文件:

var loadJSONP = (function(){
  var unique = 0;
  return function(url, callback, context) {
    // INIT
    var name = "_jsonp_" + unique++;
    if (url.match(/\?/)) url += "&callback="+name;
    else url += "?callback="+name;

    // Create script
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;

    // Setup handler
    window[name] = function(data){
      callback.call((context || window), data);
      document.getElementsByTagName('head')[0].removeChild(script);
      script = null;
      delete window[name];
    };

    // Load JSON
    document.getElementsByTagName('head')[0].appendChild(script);
  };
})();

来源:https://gist.github.com/132080/110d1b68d7328d7bfe7e36617f7df85679a08968

不幸的是,当我尝试解析JSON文件时,我收到未捕获的ReferenceError:bd未定义错误。 JSON看起来像下面的代码:

bd([
    {
        "brand": "brand_1",
        "brand_status": "1"
    },
    {
        "brand": "brand_2",
        "brand_status": "1"
    },
    {
        "brand": "brand_3",
        "brand_status": "1"
    }
]);

有没有人对如何解决这个错误有任何想法?不幸的是,第三方改变JSON文件格式是不可取的。任何帮助将非常感激。

0 个答案:

没有答案