繁体   English   中英

在解析Jquery Ajax XML响应时需要帮助

[英]Need Help in Parsing Jquery Ajax XML response

我有一个Web服务正在响应来自服务器的数据

<?xml version="1.0" encoding="UTF-8"?>
<t0>
   <t9>0</t9>
   <t1>
      <t15>LUI</t15>
      <t3>1353.50</t3>
      <t6>25</t6>
      <t4>12.40</t4>
      <t5>0.92</t5>
      <t7>1342.50</t7>
      <t8>1368.90</t8>
        </t1>

<t1>
      <t15>LUI</t15>
      <t3>1233.50</t3>
      <t6>25</t6>
      <t4>12.40</t4>
      <t5>0.92</t5>
      <t7>1342.50</t7>
      <t8>1368.90</t8>
        </t1>

</t0>

从XML响应中,我只想读取第一个根t1标记,而忽略第二个t1标记

读取第一个根t1标记后,我需要提取t1的t3和t8值

我已经尝试过了

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript">
var symbols = [ "TEST1", "TEST2", "TEST3"];

var mydata = {
    "firstName": "John",
    "lastName": "Doe"
};

 $(document).ready(function () {
 $.each( symbols, function( index, value ){
    loadXMLDoc(value);
});
});
function loadXMLDoc(value)
{
        $.ajax({
            type: 'POST',
            url: 'https://mywebserver//8080//data',
        data : "e=91&s="+value+"",
       success: function (data) {

  $(data).find("t1").each(function()
  {

var t3 =   $(this).attr("t3");
var t8  =  $(this).attr("t8");

alert(t3);
alert(t8);

  });



    } ,
            error: function (e) {    
               alert('error'+e);
            }
        });

  }

    </script>
</head>
<body>

</body>
</html>

请问我如何从根t1标签提取t3和t8标签?

您可以在此处使用.children ().find() ,因为t3t8t1

$(data).find("t1").each(function () {
    var t3 = $(this).find("t3").text();
    var t8 = $(this).find("t8").text();

    alert(t3);
    alert(t8);
});

要读取第一个,您需要在第一个循环之后返回false,而每个元素仍需要使用find-

$(data).find("t1").each(function () {
    var t3 = $(this).find("t3").text();
    var t8 = $(this).find("t8").text();

    return false; // stops the loop after one t1
});

暂无
暂无

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

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