我正在尝试从数组中提取一些网址,并将其作为<a>
HTML元素写入页面。
正如您在下面的jsfiddle中所看到的,由于某种原因,href被设置为[object text],并且URL被添加为链接文本,这意味着它们不起作用。我怎样才能使href成为我的数组中的URL,链接文本也是URL,或者像“click here”?
代码
var title = document.createTextNode(titles[i]),
author = document.createTextNode(authors[i]),
url = document.createTextNode(urls[i]),
titleX = document.createElement('h1'),
authorX = document.createElement('h2'),
urlX = document.createElement('a');
urlX.setAttribute('href', url);
答案 0 :(得分:1)
使用
urlX.setAttribute('href', url.textContent);
答案 1 :(得分:0)
将url
设置为[object Text]的原因是setAttribute
将值转换为字符串。在您的代码中url
是一个textNode,在转换为字符串时会被序列化为&#39; [object Text]'
;
> String(document.createTextNode('testing'))
"[object Text]"
确实没有必要为url创建textNode:
var urlX = document.createElement('a');
urlX.setAttribute('href', urls[i]);
urlX.appendChild(document.createTextNode('Click here'));