【问题标题】:Jquery and XML - How to add the value of nodesJquery 和 XML - 如何添加节点的值
【发布时间】:2010-03-30 14:07:23
【问题描述】:

这可能是一个简单的问题,虽然不知道该怎么做。

我正在使用 Jquery Ajax 解析 XML。它包含日期和费率

XML 看起来像

<rate>
 <date>Today</date>
 <price>66</price>
</rate> 
<rate>
 <date>Tomorrow</date>
 <price>99</price>
</rate> 

我只是想弄清楚如何计算今天和明天这两天的总价格。认为通过使用 Javascript Number 它将简单地返回节点的总值..

$(xml).find("rate").each(function()
{
   $(this).find("price").each(function()
   {
   $("#TOTALPRICE").append(Number($(this).text()));
   }

}
//output is: 6699 

但是,它只是连接两个值而不是添加它们。

//output is: 6699 

非常感谢您的帮助!!

谢谢

【问题讨论】:

    标签: xml jquery


    【解决方案1】:

    如果你只是在中间使用了一个 javascript 变量,它会得到你想要的结果。

    var myTotal = 0;
        $(xml).find("rate").each(function()
        {
           $(this).find("price").each(function()
           {
             mytotal = mytotal  + Number($(this).text());     
           }
    
        }
      $("#TOTALPRICE"). append(myTotal);
    

    【讨论】:

      【解决方案2】:

      追加不做添加,它只会添加文本。如果#TOTALPRICE 只包含总计,您可以执行以下操作:

      $(xml).find("rate").each(function()
      {
         $(this).find("price").each(function()
         {
            var current = parseInt($("#TOTALPRICE"));
            current += parseInt($(this).text());
            $("#TOTALPRICE").html(current);
         }
      }
      

      如果#TOTALPRICE 需要将内容附加到末尾,因为它包含其他内容,那么 Avitus 发布的解决方案应该适合您。

      【讨论】:

        【解决方案3】:

        jQuery 的append 会将内容插入到选择器匹配的每个元素的末尾。这意味着当您附加“66”时,它将被添加到元素中。您需要按照 Avitus 的描述跟踪总数,然后您可能想使用 jQuery 的 text 函数来设置 TOTALPRICE 的内容,如下所示:

        $("#TOTALPRICE").text(myTotal); 
        

        【讨论】:

          【解决方案4】:

          知道了,伙计们!!!我只是在“每个”中定义 Var。在每个循环上覆盖变量的值:

          $(xml).find("rate").each(function()
          {
             var myTotal = 0;
             $(this).find("price").each(function()
             {
               mytotal = mytotal  + Number($(this).text());     
             }
          
          }
          

          $("#TOTALPRICE").追加(我的总计);

          非常感谢,这个网站绝对摇滚!!!

          【讨论】:

            猜你喜欢
            • 2010-09-19
            • 2010-09-26
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-01-27
            • 2020-08-25
            相关资源
            最近更新 更多