2013-02-08 3 views
1

어떻게 jQuery로이 XML 파일을 읽을 수 있습니까? <car>Mustang</car>XML> jQuery reading

HTML/jQuery를 :

$(document).ready(function(){ 
$.get("AMA.xml", function(XMLArray){ 
$(XMLArray).find("dataset").each(function(){ 

var $myAMA = $(this); 
var number = $myAMA.attr("article.plunumber"); 
var name = $myAMA.attr("article.name"); 
var price = $myAMA.attr("article.price").text(); 
$("#AMAContainer").append("<p>"+number+"<br>"+name+"<br>"+price+"</p>"); 
    }); 
}); 
}); 

XML 파일 : "일반 태그"등의 문제없이

<document name="screen"> 
    <section name="list"> 
     <dataset> 
      <var key="type">article</var> 
      <var key="article.number">1</var> 
      <var key="article.name">Testname1</var> 
      <var key="article.displayname"/> 
      <var key="article.price">99,99</var> 
      <var key="article.plunumber">1</var> 
      <action key="STANDARD">bp1;</action> 
     </dataset> 
     <dataset> 
      <var key="type">article</var> 
      <var key="article.number">2</var> 
      <var key="article.name">Testname2</var> 
      <var key="article.price">88,88</var> 
      <var key="article.plunumber">2</var> 
      <action key="STANDARD">bp2;</action> 
     </dataset> 
    </section> 
</document> 

나는 방법을 읽는 절대 아무 생각이 없다 값. 3 개 (번호, 이름, 가격) 만 필요합니다.

+0

오프 주제이지만이 플러그인은 XML 작업을 단순화 할 수 있습니다. XML을 JSON 객체로 변환합니다.이 객체는 자바 스크립트에서 처리하기가 더 쉽습니다. http://www.fyneworks.com/jquery/xml-to -json/몇 가지 예제는 여기에서 찾을 수 있습니다. http://stackoverflow.com/questions/3642789/how-to-conve rt-xml-to-json-using-jquery – thaJeztah

답변

3

당신은 속성으로 요소를 선택할 수 있습니다 치료하고 단지처럼 <var> 치료, 또는 필터() 함수 등

$(document).ready(function() { 
    $.get("AMA.xml", function (XMLArray) { 
     var xml = $.parseXML(XMLArray); 
     $(xml).find("dataset").each(function() { 
      var number = $('[key="article.plunumber"]', this).text(); 
      var name = $('[key="article.name"]', this).text(); 
      var price = $('[key="article.price"]', this).text(); 
      $("#AMAContainer").append("<p>" + number + "<br>" + name + "<br>" + price + "</p>"); 
     }); 
    }); 
}); 
+0

Firefox는 "TypeError : $ .parseXML은 함수가 아닙니다."페이지가 여전히 비어 있습니다. EDIT : jquery를 1.9.1로 업데이트 했으므로 더 이상 FF로 경고하지 않습니다. 아직 공백 :( – TheCyX

+0

여전히 공백, 왜 몰라요 .. [에서] idrumgood : 값은 다음과 같이 표시됩니다 : [개체 개체] | 감사!! – TheCyX

+0

@HolgerFette - 숫자와 이름 변수는 DOM 요소이므로 [object, object]로 나옵니다. 요소 내용이 필요한 경우,'text'()와 비슷한 것을 사용해야 할 것입니다. 코드를 변경 했나요? – adeneo

0
var number = $myAMA.find('var[key="article.plunumber"]'); 

은 단지 속성 선택기를 사용해야합니다, 당신은 <dataset>