如何只返回一个包含给定链接中所有链接的数组?
$.get( "http://ocw.mit.edu/courses/biological-engineering/20-010j-introduction-to-bioengineering-be-010j-spring-2006/lecture-notes/", function( data ) {
alert( "Data Loaded: " + data );
});
答案 0 :(得分:0)
你可以使用正则表达式。说从这个开始
data.match(/<a.+?href=('|")([^\1]+?)\1/mg).map(function(m) { console.log(m) });
答案 1 :(得分:0)
正确,您无法对外部网址进行直接 ajax调用。但是,可以使用YQL和jQuery执行此操作,如下所示:
HTML -
<ul id="list">
</ul>
JS -
var url = encodeURIComponent("select * from html where url='http://ocw.mit.edu/courses/biological-engineering/20-010j-introduction-to-bioengineering-be-010j-spring-2006/lecture-notes' and xpath='//a/@href'");
var yql = "http://query.yahooapis.com/v1/public/yql?q=" + url + "&format=json";
$.getJSON(yql,
function(data) {
$.each(data.query.results.a, function(i, item) {
$('#list').append('<li>'+item.href+'</li>');
});
}
);