如果textarea不为空(对于许多textarea和元素),为最近的span添加类



每页365个文本区。我需要一个指标,在其中的文本区有文本。添加类"note -dot"如果textarea不为空,则指向最近的span

我只能对第一个文本区域这样做(参见第二个脚本)。但我需要对每个有文本的textarea都这样做。Textarea以两种方式获取文本:从localStorage(见第一个脚本);

var elements = document.getElementsByClassName('localstoragesave');
var elementsParent = document.querySelector("textarea").closest("span");
// Not this script. It save textarea value in localStorage
function checkValidity() {};
for (i=0; i<elements.length; i++) {
(function(element) {
var id = element.getAttribute('id');
element.value = localStorage.getItem(id + location.search);
element.oninput = function() {
localStorage.setItem(id + location.search, element.value);
checkValidity();
};
})(elements[i]);
}
// This script
window.onload = function() {
if(elements[0].value > "") {
document.querySelector("textarea").closest("span").classList.add("noted-dot");
}
};
<span class="badge rounded-pill dot dot-1">&ZeroWidthSpace;
<div class="d-none date2022-10-28">
<textarea class="localstoragesave form-control rounded-0 border-0 h-100" id="note-2022-10-28"></textarea>
</div>
</span>

遍历所有textarea元素,并有条件地添加类。

for (i=0; i<elements.length; i++) {
if(elements[i].value != "") {
elements[i].closest("span").classList.add("noted-dot");
}
}

小提琴→https://jsfiddle.net/woce8pft/1/

如果您想在输入值更改时添加点-not类,也可以在那里添加条件。

最新更新