2016-04-04 2 views
0

Ich habe Extrakt mit Regex Split-Methode, also möchte ich meinen Code mit der richtigen XML-Extrakt-Methode zu verbessern? XML-Format,Wie verbessert man Extrakt xml Knoten in Javascript?

<SanctionLimit> 
    <SancionBy>50400003</SancionBy> 
    <MinimumLimit>0.01</MinimumLimit> 
    <MaximumLimit>9999999999.99</MaximumLimit> 
</SanctionLimit> 

hier ist das, was ich bin derzeit mit:

$.each(DetailXmlData, function(indexData, objDetail) { 

     var xmlResult = objDetail.ParamInfo; 
     var arrSanction = []; 
     var Extracted_SancBy = []; 
     arrSanction = xmlResult.split("<MinimumLimit>")[0].replace("<SanctionLimit><SancionBy>", "").replace("</SancionBy><SancionBy>", ",").replace("</SancionBy>", "").split(","); 

     $.each(arrSanction, function(index, value) { 
      var sancLength = ctl00_ContentPlaceHolder1_chkSanctionedBy.getElementsByTagName('input').length; 
      for (var i = 0; i < sancLength; i++) { 
       if (ctl00_ContentPlaceHolder1_chkSanctionedBy.getElementsByTagName('span')[i].attributes["SanctionedByValue"].value == value) { 
        ctl00_ContentPlaceHolder1_chkSanctionedBy.getElementsByTagName('input')[i].checked = true; 
       } 
      } 
     }); 

     txtMinimumLimit.value = xmlResult.split("</MinimumLimit>")[0].split("<MinimumLimit>")[1]; 
     txtMaximumLimit.value = xmlResult.split("</MaximumLimit>")[0].split("<MaximumLimit>")[1]; 
     txtRemarks.value = objDetail.ParamRemarks; 
    }); 
+1

Ohne die XML zu sehen und ohne das erwartete Ergebnis zu sehen, wie denken Sie, jemand könnte Ihnen helfen? Lesen Sie auch https://api.jquery.com/jQuery.parseXML/ und versuchen Sie, zuerst eine eigene Lösung zu finden, anstatt "bitte schreibe dies für mich" zu fragen. – Tomalak

+0

Hallo m hinzugefügt tatsächlichen XML-Format. –

Antwort

1

seine Arbeit für mich,

xmlDoc = $.parseXML(xmlResult), 
     $xml = $(xmlResult); 
     $($xml).each(function() { 
      alert("sanctioned By:" + $(this).find("SancionBy").text()) 
      alert("Minimum Limit:" + $(this).find("MinimumLimit").text()); 
      alert("MaximumLimit Limit:" + $(this).find("MaximumLimit").text()); 
     }); 
0

warum nicht jQuerys parseXML Methode verwenden?

var xml = $.parseXML(xmlcontent); 
xml.find("tagName").text() 
+0

Sein Objekt bilden, wie seine xml identifizieren. –