我正在尝试从包含非常无用的标记的大型.xml文件中获取数据。这些标签几乎都是一样的,我对xml输出无能为力。这些xml文档将定期更新,我希望自动化一个网站流程,以便轻松获取相关数据。我希望获取xml文件并使用jquery中的:contains()动作,但我似乎无法使其工作。
这是我的代码:
<!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>
所以上面的代码工作正常并且它给出了所有“键”但是我想首先找到:contains('time_cost')然后横穿子项和层次结构到人力数据的末尾xml文件。我需要这样做的原因是因为在完整文件中有多个人力引用,但time_cost是唯一的。如果有人能帮助至少让最接近的功能发挥作用,我将不胜感激。
我试过了:
$title = $(xml).find( "Key:closest('time_cost')" );
但它不起作用。我对jQuery很新,所以我可能正在做一些非常微不足道的事情?
这是一个本地的jsFiddle版本: http://jsfiddle.net/yN3Sj/4/
答案 0 :(得分:1)
为什么你不这样做,它会给Value
元素带有密钥manpower
。
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc ),
$time_cost = $(xml).find( "Key:contains('time_cost')" ),
$manpower = $('Key:contains("manpower")', $time_cost.parent()).parent();
演示:Fiddle