在处理AJAX响应的循环中向元素添加类

时间:2017-01-02 00:39:15

标签: javascript ajax

AJAX请求返回包含此类节点的XML:

<root>
  <directory><li onclick=myFunc()>stuff</li></directory>
  ...
</root>

然后代码处理它:

var folderContent = '';
var data = xhttp.responseXML;
var folders = data.getElementsByTagName("directory");
for (var i = 0; i < folders.length; i++) {
                    folderContent += folders[i].childNodes[0].nodeValue;
                }
document.getElementById('folders').innerHTML = folderContent;

我想在每个列表项中添加一个类(与每个元素相同)。我应该如何使用JavaScript?

感谢。

2 个答案:

答案 0 :(得分:0)

您可以使用setAttribute设置添加(或更改)属性。另外我注意到你在一个始终未定义的元素节点上调用nodeValue。  如果您的目标是将li节点附加到folderContent,那么在附加到folderContent之前,您必须将其序列化为字符串。

Document

希望它有所帮助。

答案 1 :(得分:0)

有效:

Console.WriteLine("Downloading file....");

var watch = new Stopwatch();

byte[] data;
using (var client = new System.Net.WebClient())
{
    watch.Start();
    data = client.DownloadData("http://dl.google.com/googletalk/googletalk-setup.exe?t=" + DateTime.Now.Ticks);
    watch.Stop();
}

var speed = data.LongLength / watch.Elapsed.TotalSeconds; // instead of [Seconds] property

Console.WriteLine("Download duration: {0}", watch.Elapsed);
Console.WriteLine("File size: {0}", data.Length.ToString("N0"));
Console.WriteLine("Speed: {0} bps ", speed.ToString("N0"));

Console.WriteLine("Press any key to continue...");
Console.ReadLine();