我正在构建一个Wordpress插件,用于向从招聘平台API中提取的用户显示一个作业列表。在单击作业时,将一个cURL请求发送到API,该API将作业详细信息作为一个完整的HTML页面(在线作业广告)。我所有的东西都可以很好地拉动HTML,但是我不知道如何将它显示给用户。
我怎样才能做到:
我更喜欢在一个新的页面中打开HTML,但是不知道如何使用jQuery来实现.在页面中以模式打开也不错,但据我所知,iFrames (我还是不愿使用它),您必须传递一个url (我只是拥有完整的标记)。是否有一种方法可以在页面中显示这一点,也许可以使用画布?它携带自己的链接到CSS和Javascript,这些链接只需要在该子页面中应用。
编辑:
作为澄清,我知道我可以简单地将HTML放在页面中。我的问题是,它是一个全页。这意味着它有一个<head>
<body>
和它自己的CSS链接。只需将其放在页面中,就会与CSS的其余部分混淆,从而产生无效的HTML。
这是我已经拥有的:
$.post(ajaxurl, data, function(response) {
$('.sg-jobad-full').html(response);
});
它能很好地把回应放在页面里.但是它通过在<body>
中引入一个<body>
和竞争的CSS来破坏页面。
发布于 2013-07-15 05:19:12
如果将响应放入<div>
中,它将使陷入混乱,因为css/js/meta定义可能不会被放入<body>
中。
如果有一种方法可以在没有标记的情况下检索数据,那么您可以解析数据并让它通过javascript打印,这是我要介绍的方法。
根据您的评论,您确实应该使用iframe
,所有其他方法都会修改您的标记,使其在<html>
中具有<html>
标记,这是非常糟糕的做法。Iframes可以像<div>
元素一样被样式化,使用iframes用于您提到的目的并不脏(不从外部主机加载,它是而不是隐藏的,它是而不是跟踪)。
<iframe class="job-offers-plugin" src=".../wp-content/plugins/yourplugin/getJobs.php">
</iframe>
在里面放一些风格的,就像width;height;padding;margin;overflow;
,把它放在你喜欢的地方。
这有助于您使用数据库。
Using WPDB in standalone script?
将permalinks添加到插件脚本中:
发布于 2013-07-15 05:22:26
如果在jQuery.ajax(.)中获得完整的HTML打电话给你,你总是可以在页面上的某个div中显示它。
$.ajax({
success: function (resp){
// resp should be your html code
$("#div").html(resp);
}
});
您可以在任何地方使用$(selector).html(htmlCode)。你可以把它插入到调制解调器,数字电视,新页.
如果您必须插入整个HTML页面,您可以:,去掉不需要或的标记,使用iframe,然后将内容写到iframe: How to set HTML content into an iframe
帧不是我最喜欢的东西..。但这是有可能的
https://stackoverflow.com/questions/17654876
复制