我需要获取有关某些网站的whois信息并将其显示在我的网站上。 我设法实现它,但它不是一个简单的方法,我认为它可以以更好的方式做到这一点。这就是我做的方式
因为我需要http://megaanswers.com/的whois信息所以在whateverorigin.org我得到了jsonp请求,如下http://whateverorigin.org/get?url=http%3A%2F%2Fwww.domaininformation.de%2Fwhois%2Fmegaanswers.com(在encodeURIComponent之后),但这包含整个页面,但我只需要部分class =“result”中的页面。
现在data.contents将提供整个页面的html代码。并且这个html代码使用jquery附加到id =“target”的div,并且div被赋予style =“display:none;”,因此div不会显示在页面上。现在使用jquery选择具有类结果的元素,并将其html附加到id为“realtarget”的div
这是最终代码的样子
<div id="target" style="display:none;"></div>
<div id="realtarget"></div>
<script>
$.ajaxSetup({
scriptCharset: "utf-8", //maybe "ISO-8859-1"
contentType: "application/json; charset=utf-8"});
$.getJSON('http://whateverorigin.org/get?url=' +
encodeURIComponent('http://www.domaininformation.de/whois/megaanswers.com') + '&callback=?',
function(data) {
var thecontents = data.contents;
$('#target').html(thecontents);
var required = $('.result').html();
$('#realtarget').html("<pre>" + required + "</pre>");
});
</script>
但是,如果不首先将整个页面的html代码附加到id =“target”的div,然后选择所需的class =“result”(直接选择class =“result”),是否可以这样做。 任何帮助表示赞赏
答案 0 :(得分:0)
使用jquery,您可以选择元素到变量中。 (但不要编辑): 试试这个:
function(data) {
var thecontents = data.contents;
var required = $('.result', thecontents).html(); // select '.result' class in 'thecontents'
$('#realtarget').html("<pre>" + required + "</pre>");
});