【发布时间】:2015-03-05 18:29:04
【问题描述】:
我正在尝试为网站构建嵌入式小部件。此小部件将使用 javascript 从外部网站调用。
当我的小部件脚本添加到网页下面的代码运行时:
var widget = {
initialize : function(containerId)
{
(function($) {
var url = 'http://localhost:8002/callback.js';
$.ajax({
url: url,
jsonpCallback: 'jsonCallback',
contentType: "application/json",
dataType: 'jsonp',
success: function(data) {
$("#" + containerId).html(data);
},
error: function(e) {
console.log(e.message);
}
});
})(jQuery);
}
}
这段代码将我的小部件嵌入到给定的 html 容器 (div) 中,这是我的回调:
jsonCallback(
{"html": "<html><body>mahmut tuncer</body></html>" }
);
所以,当我将硬编码的 html 作为 json 提供时,它可以工作。现在,我需要做的是:将另一个 html 文件加载为 json 在将我的回调发送回请求网站之前。
【问题讨论】:
-
如何做到这一点取决于您使用的服务器端语言。现在你似乎只有一个静态文件。您需要运行一些以编程方式生成响应的服务器端代码。
-
也可以考虑使用 CORS 来启用你的输出,这样你就不需要 jsonp。然后你可以发送原始 html
标签: javascript jquery html callback jsonp