我正在用 JavaScript 拖放图像。我在图像中给出了一些属性。我正在名称上调用属性 ("data-id")
。
<img class="item" id="Img2" src="http://dummyimage.com/100x100/000/fff&text=Figen" draggable="true" ondragstart="drag(event)" alt="" data-id="20" />
<img class="item" id="Img3" src="http://dummyimage.com/100x100/000/fff&text=Naz" draggable="true" ondragstart="drag(event)" alt="" data-id="30"/>
<img class="item" id="Img4" src="http://dummyimage.com/100x100/000/fff&text=Test" draggable="true" ondragstart="drag(event)" alt="" data-id="40"/>
<img class="item" id="Img5" src="http://dummyimage.com/100x100/000/fff&text=Huni" draggable="true" ondragstart="drag(event)" alt="" data-id="50"/>
<img class="item" id="Img6" src="http://dummyimage.com/100x100/000/red&text=Mavi" draggable="true" ondragstart="drag(event)" alt="" data-id="60"/>
<img class="item" id="Img0" src="http://dummyimage.com/100x100/000/fff&text=Can" draggable="true" ondragstart="drag(event)" alt="" data-id="90"/>
现在,当我拖放上面的图像时,我想在类端捕获(数据ID)。代码在类端是正确的,但是当我尝试删除图像时,我没有捕获(数据- id) 在 JavaScript 中。
function allowDrop(ev) {
ev.preventDefault();
}
function drag(ev) {
ev.dataTransfer.setData("text", ev.target.id);
}
function drop(ev) {
ev.preventDefault();
debugger;
var data = ev.dataTransfer.getData("Text");
var itemToMove = document.getElementById(data).getAttribute("data-id");
ev.target.appendChild(itemToMove);
当我回发图像时,我想查看后面的代码。 Return İdList
它说“未找到”
这些代码在类里面是正确的。
我在这里称之为Public Property idlist() As List(Of String)
得到
返回_idlist
结束获取
设置(ByVal 值作为列表(字符串))
_idlist = 值
结束组
结束属性
然后返回,没问题吧。
最佳答案
如果我明白你的意思,你想获取data-id
属性并将其放在某个地方。您正在尝试删除短信。 appendChild(x)
方法要求 x
为 childNode。因此,您应该将文本转换为 childNode。
您可以按照以下方式进行操作。
var itemToMove = document.getElementById(data).getAttribute("data-id");
//convert itemToMove into a TextNode.
itemToMove = document.createTextNode(itemToMove);
//append it into the target
ev.target.appendChild(itemToMove)
但是,您应该注意到数据传输类型中写入的 text
和 Text
。它们应该是相同的。
希望对您有帮助
关于图像中的 JavaScript getAttribute() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40334932/