。每个函数JavaScript在XML中迭代两次

时间:2015-09-23 20:29:34

标签: javascript jquery html xml

我试图用jquery遍历xml并将其发布到html上。由于某种原因,作者中的每个函数都附加了重复项。例如,我将获得James McgovernPer BothnerKurt BothernerKurt CagleJames Linn Valiyanathan Nagarjan,James McgovernPer BothnerKurt BothernerKurt CagleJames Linn Valiyanathan Nagarjan。我想知道如何解决这个问题?谢谢!

h = game:GetService'HttpService'
JSON = h:JSONEncode(ImgScript) --ImgScript is a table formatted like {{x,y,z}, {x,y,z}, {x,y,z}, etc.}
data = h:UrlEncode('&api_dev_key=CensoredDevKey&api_option=paste&api_paste_code=' .. JSON)
h:PostAsync('http://pastebin.com/api/api_post.php', data)

2 个答案:

答案 0 :(得分:2)

您首先将$(this).find('author').text()设置为auther,然后在每个中添加行。这会导致列表重复。

您应该只使用var author = ''替换第一个作业。

答案 1 :(得分:2)

需要更换

var author = $(this).find('author').text();

var author ='';

第一个将连接所有这些元素的文本,没有任何空格......然后你单独循环遍历元素并添加到它。

要删除author中的尾随逗号,可以更改为:

var author =[];
$(this).find('author').each(function(){
    author.push( $(this).text());
});    
author = author.join(', ');

// or

var author = $(this).find('author').map(function(){
      return $(this).text();
}).get().join(', ');