2017-03-15 20 views
0

我對XML和Javascript很陌生。 我有這個在我的html:有沒有一種方法與JavaScript來搜索我的xml的屬性,並獲取其中有這個屬性的整個parentelement?

<select id="eigenschaften" name="eigenschaften" type="text" onchange=""> 
    <option value="">Eigenschaft wählen</option> 
    <option value="gesellig">gesellig</option> 
    <option value="ruhig">ruhig</option> 
    <option value="unkompliziert">unkompliziert</option> 
    <option value="temperamentvoll">temperamentvoll</option> 
    <option value="neugierig">neugierig</option> 
    <option value="verschmust">verschmust</option> 
    <option value="intelligent">intelligent</option> 
</select> 

這些值是從我的XML屬性。我想在這些屬性中搜索我的xml,並且不僅獲取包含該屬性的元素,還返回整個父元素。 這是可能的JavaScript?

我開始與基本的ajax:

function loadXmlDocument(url) { 
    var xmlhttp; 
    if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari 
     xmlhttp = new XMLHttpRequest(); 
    } 
    else { // code for IE6, IE5 
     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xmlhttp.onreadystatechange = function() { 
     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
      xmlDocument = xmlhttp.responseXML; 
     } 
    } 
    xmlhttp.open("GET", url, true); 
    xmlhttp.send(); 
} 

但我現在有種卡住。 有人可以幫忙嗎?

回答

0

示例: demo.xml數據

<?xml version="1.0"?> 
<user> 
    <details> 
    <name>abc</name> 
    <class>xyz</class> 
    <city>pqr</city> 
    </details> 
    <info> 
    <id>123</id> 
    <code>456</code> 
    </info> 
</user> 

var request = new XMLHttpRequest(); 
request.open("GET", "/path/demo.xml", false); 
request.send(); 
var xml = request.responseXML; 
var users = xml.getElementsByTagName("user"); 
for(var i = 0; i < users.length; i++) { 
    var user = users[i]; 
    var names = user.getElementsByTagName("name"); 
    for(var j = 0; j < names.length; j++) { 
     alert(names[j].childNodes[0].nodeValue); 
    } 
} 
+0

如果正在使用JQuery然後VAR XML = 「 RSS標題」, xmlDoc中= $ .parseXML (xml), $ xml = $(xmlDoc), $ title = $ xml.find(「title」); –

+0

Thanx爲您的答覆,但我的屬性問題呢? – Lisa

+0

你可以提供我想要跟蹤的XML .... –

相關問題