使用javascript从html中提取元素

时间:2012-05-19 07:47:19

标签: javascript android cordova

假设我在网络上有一个网页,此页面包含许多带有ID的元素。如何使用javascript获取这些元素?  我在jQuery中使用过这个块:

    $.get(websiteUrl, {}, function(results){
    //alert(results); // will show the HTML from anotherPage.html
    console.log($(results).find("bookId").html()); // show "bookId" div in results
    });

但我得到错误:

 XMLHttpRequest cannot load; Origin http://127.0.0.1:8000 is not allowed by Access-Control-Allow-Origin.

实际上,我正在尝试从Android上的Phonegap应用中的网页上获取一些数据。 任何想法如何做到这一点?

2 个答案:

答案 0 :(得分:1)

大多数浏览器都遵循严格的同源策略。这意味着您无法向其他服务器发出Ajax请求。虽然你可以绕过它,但对每个客户来说都是不切实际的。

您最好的选择是调用服务器端脚本为您获取它,并将结果返回给JavaScript。

答案 1 :(得分:1)

您可以使用jsonp执行跨域ajax调用,但不会收到错误或超时回调。 jsonp本身支持jQuery。 http://api.jquery.com/jQuery.ajax/理论上,您使用精心构建的URL向页面添加脚本标记,其中包含回调函数的名称。然后服务器处理ajax“请求”,并将答案作为回调函数的单个参数返回。