2014-12-03 104 views
0

我是新来的编码,我试图找出解析HTML在jQuery Mobile中使用的最佳方法。例如,我想解析此链接的咨询部分(http://www.wmata.com/rider_tools/metro_service_status/advisories.cfm?AID=4503),但我不确定最佳方法。我查看了JSOUP,但我不确定这是否适用于jquery移动应用程序。然后我看到这个链接(http://jsfiddle.net/skelly/m4QCt/),并认为它可以通过AJAX完成。但它似乎没有工作。有人可以请指点我正确的方向吗?先谢谢你。如何使用jquery mobile解析HTML

$(document).ready(function() { 

    baseUrl = "http://www.mashable.com"; 
    $.ajax({ 
     url: baseUrl, 
     type: "get", 
     dataType: "", 
     success: function(data) { 
      //code 
     } 
    }); 
}); 
+0

JSOUP是一个Java库,而不是JS?通常,您只需使用Ajax来传递数据和/或接收服务器端语言的响应,该语言将执行html解析(即,像您提到的java&jsoup)或PHP等后端。您更可能希望使用JQuery Mobile来处理您的前端逻辑。 – 2014-12-03 04:56:09

回答

1

您可以使用此插件:

http://www.ajax-cross-origin.com/

它有助于跨域Ajax调用。

然后脚本变得像这样:

var baseUrl = "http://www.wmata.com/rider_tools/metro_service_status/advisories.cfm?AID=4503"; 
$.ajax({ 
    crossOrigin: true, 
    url: baseUrl, 
    success: function(data) { 
     console.log($(data)); 
     var $advisory = $(data).find(".internal-box2-inner"); 
     $advisory.find("a").remove(); 
     $advisory.find("script").remove(); 
     $('#theResults').html($advisory); 
    } 
}); 

.internal-box2-inner是类,它具有实际咨询文本的DIV的。

这里是一个工作DEMO

+0

呜呼! = D非常感谢你!它完美的作品!我正在查看该页面上的其他部分,我想知道是否可以在这种形式下使用它http://www.wmata.com/rider_tools/tripplanner/tripplanner_form_solo.cfm我所要的只是能够输入“to”和“from”,然后显示不同的行程。 – speedracer2003 2014-12-04 05:11:57

+0

@ speedracer2003,也许你可以把旅行计划器放在你的网站的iframe中? – ezanker 2014-12-04 14:22:13

+0

听起来不错,再次感谢=) – speedracer2003 2014-12-04 15:31:25