使用:包含在jQuery的XML解析
问题描述:
我想从一个很大的.xml文件,其中包含相当无益的标签采取数据。这些标签都几乎相同,并且我无法对xml输出做任何事情。这些XML文件将会定期更新,我希望能够自动化网站的流程,轻松获取相关数据。我希望能够获取xml文件,并使用jquery的:contains()动作,但似乎无法使其工作。使用:包含在jQuery的XML解析
这里是我的代码:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<p id="manpower"></p>
<script>
$(document).ready(function(){
$.ajax({
type: "GET",
url: "test.xml",
dataType: "xml",
success: function(xml) {
$title = $(xml).find("Key");
$("#manpower").append($title.text());
}
});
});
</script>
</body>
</html>
所以上面的代码工作正常,它给所有的“钥匙”不过,我想先找到的是:包含(“time_cost” ),然后横穿儿童和层次结构到xml文件末尾的人力数据。我需要这样做的原因是因为在完整文件中有多个人力参考,但time_cost是唯一的。如果有人能够帮助至少获得最接近的功能,我将不胜感激。
我曾尝试:
$title = $(xml).find("Key:closest('time_cost')");
但它不工作。我对jQuery相当陌生,所以我可能会做一些相当微不足道的事情?
这是当地的jsfiddle版本: http://jsfiddle.net/yN3Sj/4/
答
你为什么不这样做,它会给出一个具有关键manpower
Value
元素。
xmlDoc = $.parseXML(xml),
$xml = $(xmlDoc),
$time_cost = $(xml).find("Key:contains('time_cost')"),
$manpower = $('Key:contains("manpower")', $time_cost.parent()).parent();
演示:Fiddle
+0
嗯intersting,没有想到它那样。主要问题是有多个条目与'人力',所以我最终通过使用更独特的标记和使用.next()和.prev() – user2242999 2013-04-04 04:38:29
你的问题说: “载”,但该代码表示 “最接近的一次。”这是什么? – 2013-04-04 02:52:30
什么是价值,你想作为输出 – 2013-04-04 03:12:56