Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery读取XML-多条记录一起运行_Javascript_Jquery_Xml_Vbscript_Xml Parsing - Fatal编程技术网

Javascript 使用jQuery读取XML-多条记录一起运行

Javascript 使用jQuery读取XML-多条记录一起运行,javascript,jquery,xml,vbscript,xml-parsing,Javascript,Jquery,Xml,Vbscript,Xml Parsing,我将在第4天敲打我的头——我已经尝试了vbscript、javascript和jQuery jQuery是我最接近于获得可读性的东西(不过,我对任何东西都持开放态度) 我正在导入一天结束报告的UPS XML文件 我需要的是能够将结果拉入ASP脚本以更新我的购物车。XML文件将是本地的,我将把它上载到我的服务器,然后运行脚本 这是我的HTML,它在一行上生成以下结果: 10051310516-1Z12345X0341863059 1Z12345X0342721665 <!DOCTYPE ht

我将在第4天敲打我的头——我已经尝试了vbscript、javascript和jQuery

jQuery是我最接近于获得可读性的东西(不过,我对任何东西都持开放态度)

我正在导入一天结束报告的UPS XML文件

我需要的是能够将结果拉入ASP脚本以更新我的购物车。XML文件将是本地的,我将把它上载到我的服务器,然后运行脚本

这是我的HTML,它在一行上生成以下结果:

10051310516-1Z12345X0341863059 1Z12345X0342721665

<!DOCTYPE html>
<html>

<head>

<script src="jquery.min.js" type="text/javascript"></script> 

<script type="text/javascript">
$(document).ready(function(){
      $("#dvContent").append("");
      $.ajax({
        type: "GET",
        url: "UPSImportTracking.xml",
        dataType: "xml",
        success: function(xml){
        $(xml).find('OpenShipments').each(function(){
          var cID = $(this).find('CustomerID').text();
          var tID = $(this).find('TrackingNumbers').text();
                $("#dvContent").append("<p>"+cID+" - "+tID+"</p>");
        });
      },
      error: function() {
        alert("An error occurred while processing XML file.");
      }
    });
});
</script>
</head>

<body>

<div id="dvContent">
</div>
</body>

</html>
我希望它显示如下:

100513-1Z12345X0341863059

100516-1Z12345X0342721665

<!DOCTYPE html>
<html>

<head>

<script src="jquery.min.js" type="text/javascript"></script> 

<script type="text/javascript">
$(document).ready(function(){
      $("#dvContent").append("");
      $.ajax({
        type: "GET",
        url: "UPSImportTracking.xml",
        dataType: "xml",
        success: function(xml){
        $(xml).find('OpenShipments').each(function(){
          var cID = $(this).find('CustomerID').text();
          var tID = $(this).find('TrackingNumbers').text();
                $("#dvContent").append("<p>"+cID+" - "+tID+"</p>");
        });
      },
      error: function() {
        alert("An error occurred while processing XML file.");
      }
    });
});
</script>
</head>

<body>

<div id="dvContent">
</div>
</body>

</html>

$(文档).ready(函数(){
$(“#dvContent”)。追加(“”);
$.ajax({
键入:“获取”,
url:“upImportTracking.xml”,
数据类型:“xml”,
成功:函数(xml){
$(xml).find('openshippings').each(function(){
var cID=$(this.find('CustomerID').text();
var tID=$(this.find('TrackingNumbers').text();
$(“#dvContent”)。追加(“”+cID+”-“+tID+”

”); }); }, 错误:函数(){ 警报(“处理XML文件时出错。”); } }); });
以下是upsxml

<?xml version="1.0" encoding="windows-1252"?>
<OpenShipments xmlns="x-schema:OpenShipments.xdr">
    <OpenShipment xmlns="x-schema: OpenShipments.xdr" ProcessStatus="Processed" ShipmentOption="SC">
        <ShipTo>
            <CustomerID>100513</CustomerID>
            <CompanyOrName>MACHXX</CompanyOrName>
            <Attention>Robert Brady </Attention>
            <Address1>902 Old Coupland Rd</Address1>
            <Address2></Address2>
            <CityOrTown>Taylor</CityOrTown>
            <PostalCode>76574</PostalCode>
            <StateProvinceCounty>TX</StateProvinceCounty>
            <CountryTerritory>United States</CountryTerritory>
            <Telephone>512-888-3900</Telephone>
            <EmailAddress>jcdisciple@gmail.com</EmailAddress>
            <ResidentialIndicator>1</ResidentialIndicator>
        </ShipTo>
        <ShipmentInformation>
            <ServiceType>GND</ServiceType>
            <NumberOfPackages>1</NumberOfPackages>
            <DescriptionOfGoods>Industrial Metals</DescriptionOfGoods>
            <ShipperNumber>12345X</ShipperNumber>
            <BillingOption>PP</BillingOption>
            <QVNOption>
                <QVNRecipientAndNotificationTypes>
                    <EMailAddress>jcdisciple@gmail.com</EMailAddress>
                    <Ship>1</Ship>
                </QVNRecipientAndNotificationTypes>
                <SubjectLine>Your Order is being Prepared for Shipment.</SubjectLine>
                <Memo></Memo>
            </QVNOption>
        </ShipmentInformation>
        <Package>
            <PackageType>CP</PackageType>
            <Weight>1</Weight>
            <LargePackageIndicator></LargePackageIndicator>
            <Reference1>100513</Reference1>
            <Reference2></Reference2>
        </Package>
        <ReturnTo>
            <CompanyName>Metals4U-Dallas</CompanyName>
            <ContactPerson></ContactPerson>
            <AddressLine1>1240 Majesty Rd</AddressLine1>
            <AddressLine2></AddressLine2>
            <AddressLine3></AddressLine3>
            <City>Dallas</City>
            <CountryCode>United States</CountryCode>
            <PostalCode>75247</PostalCode>
            <StateOrProvince>TX</StateOrProvince>
            <Residential></Residential>
            <EmailAddress1>robert.brady@metals4u.com</EmailAddress1>
        </ReturnTo>
        <ProcessMessage>

            <ShipmentRates>
                <ShipmentCharges>
                    <Rate>
                        <Published>12.83</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </ShipmentCharges>
                <ShipperCharges>
                    <Rate>
                        <Published>12.83</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </ShipperCharges>
                <ReceiverCharges>
                    <Rate>
                        <Published>0.00</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </ReceiverCharges>
                <QVN>
                    <Rate>
                        <Published>0.00</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </QVN>
                <ResidentialSurcharge>
                    <Rate>
                        <Published>2.90</Published>
                        <Negotiated></Negotiated>
                    </Rate>
                </ResidentialSurcharge>
                <PackageRates>
                    <PackageRate>
                        <TrackingNumber>1Z12345X0341863059</TrackingNumber>
                        <PackageCharges>
                            <Rate>
                            <Published>12.83</Published>
                            <Negotiated>0.00</Negotiated>
                            </Rate>
                        </PackageCharges>
                        <Delivery_AreaSurcharge>
                            <Rate>
                            <Published>2.85</Published>
                            <Negotiated>0.00</Negotiated>
                            </Rate>
                        </Delivery_AreaSurcharge>
                    </PackageRate>
                </PackageRates>
            </ShipmentRates>
            <TrackingNumbers>
                <TrackingNumber>1Z12345X0341863059</TrackingNumber>
            </TrackingNumbers>
            <ImportID></ImportID>
            <Reference1>100513</Reference1>
            <Reference2></Reference2>
        <ShipmentID></ShipmentID>
        <PRONumber></PRONumber>
        </ProcessMessage>
    </OpenShipment>
    <OpenShipment xmlns="x-schema: OpenShipments.xdr" ProcessStatus="Processed" ShipmentOption="SC">
        <ShipTo>
            <CustomerID>100516</CustomerID>
            <CompanyOrName>C/O: Robert Brady</CompanyOrName>
            <Attention>Robert Brady </Attention>
            <Address1>902 Old Coupland Rd</Address1>
            <Address2></Address2>
            <CityOrTown>Taylor</CityOrTown>
            <PostalCode>76574</PostalCode>
            <StateProvinceCounty>TX</StateProvinceCounty>
            <CountryTerritory>United States</CountryTerritory>
            <Telephone>512-888-3900</Telephone>
            <EmailAddress>jcdisciple@gmail.com</EmailAddress>
            <ResidentialIndicator>1</ResidentialIndicator>
        </ShipTo>
        <ShipmentInformation>
            <ServiceType>GND</ServiceType>
            <NumberOfPackages>1</NumberOfPackages>
            <DescriptionOfGoods>Industrial Metals</DescriptionOfGoods>
            <ShipperNumber>12345X</ShipperNumber>
            <BillingOption>PP</BillingOption>
            <QVNOption>
                <QVNRecipientAndNotificationTypes>
                    <EMailAddress>jcdisciple@gmail.com</EMailAddress>
                    <Ship>1</Ship>
                </QVNRecipientAndNotificationTypes>
                <SubjectLine>Your Order is being Prepared for Shipment.</SubjectLine>
                <Memo></Memo>
            </QVNOption>
        </ShipmentInformation>
        <Package>
            <PackageType>CP</PackageType>
            <Weight>1</Weight>
            <LargePackageIndicator></LargePackageIndicator>
            <Reference1>100516</Reference1>
            <Reference2></Reference2>
        </Package>
        <ReturnTo>
            <CompanyName>Metals4U-Dallas</CompanyName>
            <ContactPerson></ContactPerson>
            <AddressLine1>1240 Majesty Rd</AddressLine1>
            <AddressLine2></AddressLine2>
            <AddressLine3></AddressLine3>
            <City>Dallas</City>
            <CountryCode>United States</CountryCode>
            <PostalCode>75247</PostalCode>
            <StateOrProvince>TX</StateOrProvince>
            <Residential></Residential>
            <EmailAddress1>robert.brady@metals4u.com</EmailAddress1>
        </ReturnTo>
        <ProcessMessage>

            <ShipmentRates>
                <ShipmentCharges>
                    <Rate>
                        <Published>12.83</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </ShipmentCharges>
                <ShipperCharges>
                    <Rate>
                        <Published>12.83</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </ShipperCharges>
                <ReceiverCharges>
                    <Rate>
                        <Published>0.00</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </ReceiverCharges>
                <QVN>
                    <Rate>
                        <Published>0.00</Published>
                        <Negotiated>0.00</Negotiated>
                    </Rate>
                </QVN>
                <ResidentialSurcharge>
                    <Rate>
                        <Published>2.90</Published>
                        <Negotiated></Negotiated>
                    </Rate>
                </ResidentialSurcharge>
                <PackageRates>
                    <PackageRate>
                        <TrackingNumber>1Z12345X0342721665</TrackingNumber>
                        <PackageCharges>
                            <Rate>
                            <Published>12.83</Published>
                            <Negotiated>0.00</Negotiated>
                            </Rate>
                        </PackageCharges>
                        <Delivery_AreaSurcharge>
                            <Rate>
                            <Published>2.85</Published>
                            <Negotiated>0.00</Negotiated>
                            </Rate>
                        </Delivery_AreaSurcharge>
                    </PackageRate>
                </PackageRates>
            </ShipmentRates>
            <TrackingNumbers>
                <TrackingNumber>1Z12345X0342721665</TrackingNumber>
            </TrackingNumbers>
            <ImportID></ImportID>
            <Reference1>100516</Reference1>
            <Reference2></Reference2>
        <ShipmentID></ShipmentID>
        <PRONumber></PRONumber>
        </ProcessMessage>
    </OpenShipment>
</OpenShipments>

100513
马赫
罗伯特·布雷迪
古普兰路902号
泰勒
76574
德克萨斯州
美国
512-888-3900
jcdisciple@gmail.com
1.
GND
1.
工业金属
12345X
聚丙烯
jcdisciple@gmail.com
1.
您的订单正在准备装运。
人物配对关系
1.
100513
达拉斯金属4U
陛下路1240号
达拉斯
美国
75247
德克萨斯州
罗伯特。brady@metals4u.com
12.83
0
12.83
0
0
0
0
0
2.90
1Z12345X0341863059
12.83
0
2.85
0
1Z12345X0341863059
100513
100516
转交:罗伯特·布雷迪
罗伯特·布雷迪
古普兰路902号
泰勒
76574
德克萨斯州
美国
512-888-3900
jcdisciple@gmail.com
1.
GND
1.
工业金属
12345X
聚丙烯
jcdisciple@gmail.com
1.
您的订单正在准备装运。
人物配对关系
1.
100516
达拉斯金属4U
陛下路1240号
达拉斯
美国
75247
德克萨斯州
罗伯特。brady@metals4u.com
12.83
0
12.83
0
0
0
0
0
2.90
1Z12345X0342721665
12.83
0
2.85
0
1Z12345X0342721665
100516

由于问题标记为VBScript,Windows XML工具为msxml:

Dim oFS      : Set oFS      = CreateObject("Scripting.FileSystemObject")
Dim sFSpec   : sFSpec       = oFS.GetAbsolutePathName("..\testdata\xml\26149392.xml")
Dim objMSXML : Set objMSXML = CreateObject("Msxml2.DOMDocument")
objMSXML.setProperty "SelectionLanguage", "XPath"
objMSXML.async = False
objMSXML.load sFSpec

If 0 = objMSXML.parseError Then
   Dim sXPath   : sXPath       = "/OpenShipments/OpenShipment"
   Dim ndlShipm : Set ndlShipm = objMSXML.selectNodes(sXPath)
   Dim ndShipm
   For Each ndShipm In ndlShipm
       Dim Id : Id = ndShipm.selectSingleNode("ShipTo/CustomerID").text
       Dim ndlTrack : Set ndlTrack = ndShipm.selectNodes("ProcessMessage/TrackingNumbers")
       Dim ndTrack
       For Each ndTrack In ndlTrack
           WScript.Echo Id, ndTrack.text
       Next
   Next
Else
   WScript.Echo objMSXML.parseError.reason
End If
以及使用组件
cscript 26149392.js / 26149392.vbs
100513 1Z12345X0341863059
100516 1Z12345X0342721665