所以本质上我得到了输入的值,然后尝试通过这个的逗号将其划分为不同的标签
var noteTags = document.getElementsByClassName("noteTag").value;
Tag = noteTags.split(",");
但在控制台中,split(",")
是undefined
编辑:很抱歉,我忘了提到noteTag元素是输入的,这会以任何方式改变代码的工作方式吗?
有两个问题,
getElementsByClassName
返回一个类似数组的元素集合(一个NodeList
(- 而不是
value
,它应该是innerText
像下面的一样尝试
var noteTags = document.getElementsByClassName("noteTag")[0].innerText;
Tag = noteTags.split(",");
您正在对数组使用split((方法。您还试图访问值属性,因此您可能应该使用innerText。
您可以使用querySelector
,然后不需要使用键[0]来选择元素。
const noteTags = document.querySelector("#noteTag");
console.log(noteTags)
Tag = noteTags.innerHTML.split(",");
console.log(Tag)
<div id="noteTag">en,jp,fr</div>