简体   繁体   English

如何改善JavaScript中的XML提取节点?

[英]How to improve extract xml node in javascript?

I have extract with regex split method, so i want to improve my code with proper xml extract method ? 我已经用正则表达式拆分方法提取了代码,所以我想使用适当的xml提取方法来改进代码? XML format, XML格式

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

here is what I am currently using: 这是我目前正在使用的:

$.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;
    });

its work for me, 它对我的工作,

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());
        });

why not use jquery's parseXML method? 为什么不使用jquery的parseXML方法?

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM