这是我的代码:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
var xml;
$.get(
"code.xml",
function(data) { xml=data; },
"html"
);
function get_list(){
xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc ),
$title = $xml.find('[value="'+$('#select').val()+'"]');
$nodes = $title.find('*');
var result='';
$nodes.each(function(){
result += $(this).attr('value');
result += ' ';
});
$("#result").html(result);
}
</script>
</head>
<input type="text" id="select">
<input type="button" name="button" value="Search" onclick="get_list()" >
<div id="result">
</div>
</html>
这是我的xml
文件:
<root>
<child_1 entity_id = "1" value="india">
<child_2 entity_id = "2" value="gujarat">
<child_3 entity_id = "3" value="Ahemdabad"/>
<child_4 entity_id = "4" value="Surat"/>
<child_5 entity_id = "5" value="Rajkot"/>
</child_2>
</child_1>
<child_6 entity_id = "6" value="Rasia">
<child_7 entity_id = "7" value="state">
<child_8 entity_id = "8" value="cty"/>
<child_9 entity_id = "9" value="cty1"/>
<child_10 entity_id = "10" value="cty2"/>
</child_2>
</child_6>
</root>
使用此代码,我得到
child node value
。
我想要一些东西,比如当我输入{{1>}任何城市名称时: Ahemdabad , Surat ,拉杰科特;然后它在我的xml文件上的匹配返回textbox
,如印度。
谢谢!
答案 0 :(得分:2)
尝试
var xml;
$.get(
"code.xml",
function(data) {
xml=data;
},
"html"
);
function get_list(){
var xmlDoc = $.parseXML( xml ),
$xml = $( xmlDoc ),
$title = $xml.find('[value="'+$('#select').val()+'"]');
var ctrs = $xml.find('root').children();
$("#result").html($title.closest(ctrs).attr('value'));
}
演示:Plunker
答案 1 :(得分:0)
您可以使用此xpath
//*[@value='Ahemdabad']/parent::*/@value
将“Ahemdabad”替换为所需的城市名称