[英]How to find the element with an attribute and change the attribute value in javascript?
function allowDrop(ev) { ev.preventDefault(); } function drag(ev) { ev.dataTransfer.setData("Text", ev.target.id); } function drop(ev) { var data = ev.dataTransfer.getData("Text"); ev.target.appendChild(document.getElementById(data)); ev.preventDefault(); }
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div> <img id="x" src="X.png" draggable="true" ondragstart="drag(event)" />
After dropping the image how can i change the attribute value draggable="true"
to draggable="false"
by finding the available elements with attribute draggable="true"
inside the function drop()
? 删除图像后,如何通过在函数
drop()
找到属性draggable="true"
的可用元素,将属性值draggable="true"
更改为draggable="false"
?
I would use querySelectorAll and setAttribute 我会使用querySelectorAll和setAttribute
document.querySelectorAll('[draggable="true"]').forEach(elem =>
elem.setAttribute("draggable",false)
);
Older JS 年长的JS
var elems = document.querySelectorAll('[draggable="true"]');
for (var i=0;i<elems.length;i++) {
elems[i].setAttribute("draggable",false);
}
Using a class: 使用课程:
document.querySelectorAll('.someClass[draggable="true"]')
Use querySelectorAll
to get all the elements having draggable set to true
. 使用
querySelectorAll
将所有具有draggable set to true
的元素。 using setAttribute
set draggable to false
使用
setAttribute
将draggable to false
设置draggable to false
function allowDrop(ev) { ev.preventDefault(); } function drag(ev) { ev.dataTransfer.setData("Text", ev.target.id); } function drop(ev) { var data = ev.dataTransfer.getData("Text"); ev.target.appendChild(document.getElementById(data)); ev.preventDefault(); var elem = document.querySelector('.className'); elem.querySelectorAll('[draggable="true"]').forEach(e => e.setAttribute('draggable', false)) }
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"></div> <img id="x" src="X.png" draggable="true" ondragstart="drag(event)" />
You can use 您可以使用
document.querySelectorAll('[draggable="true"]');
in order to find elements with a certain attribute. 为了找到具有特定属性的元素。
Note that this works only for HTML attributes, for classes you shall use 请注意,这仅适用于您应使用的类的HTML属性
document.querySelectorAll('.classname[draggable="true"]')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.