我有一个带有人的数据的列表,里面有一个li元素,里面有3个p标签,一个是名字,一个是地址,一个是电子邮件。
我手动填写了此列表,但是由于对我的代码进行了一些更改,我不得不重写此列表,以便使用javascript制作html。
我的代码看起来像这样
<p class="adres">@logopedist.Adres</p>
<p class="email">@logopedist.Email</p>
<p class="mobiel">@logopedist.Mobiel</p>
我重写了此代码以使用javascript构建html。看起来像这样。
var li = document.createElement('li');
li.className = "lijst";
li.id = "lijst";
li.onclick = "ficheVullen(this)";
p.className = "naam";
p.innerHTML = objLogos.Naam[i];
li.appendChild(p);
p.className = "adres";
p.innerHTML = objLogos.Adres[i];
li.appendChild(p);
var p = document.createElement('p');
p.className = "mobiel";
p.innerHTML = objLogos.Mobiel[i];
li.appendChild(p);
我的列表生成正确。但是在我的旧代码中,我将其放在列表的开头。
<li class="lijst" onclick="ficheVullen(this)">
每当您单击li元素时,都会使用li内p标签的信息填充div,因此它将用名称,地址,移动电话等填充div 我似乎无法再使用此功能。它仅适用于第一个LI元素,并且仅适用于名称。即使我的代码相同,并且像在旧代码中一样,我也将类附加到了标签上。
该函数如下所示:
function ficheVullen() {
FicheNaam = document.getElementById("FicheNaam");
FicheAdres = document.getElementById("FicheAdres");
FicheGSM = document.getElementById("FicheGSM");
FicheNaam.innerHTML = this.querySelector('.naam').textContent;
FicheGSM.innerHTML = this.querySelector('.mobiel').textContent;
FicheAdres.innerHTML = this.querySelector('.adres').textContent;
我现在收到此错误。无法读取null的属性“ textContent”
我在这里调用此函数:
window.onload = function() {
changePage(1);
document.getElementById("lijst").addEventListener("click", ficheVullen);
};
changepage函数是我使用JavaScript建立列表的分页的一部分。 当我将eventlistener移出时,出现以下错误:无法读取null的属性'addEventListener'。
我希望这能提供足够的背景