--- title: DataTransfer.getData() slug: Web/API/DataTransfer/getData translation_of: Web/API/DataTransfer/getData ---
{{APIRef("HTML DOM")}}
DataTransfer.getData() 方法接受指定类型的拖放(以{{domxref("DOMString")}}的形式)数据。如果拖放行为没有操作任何数据,会返回一个空字符串。
数据类型有:text/plain,text/uri-list。
DOMString dataTransfer.getData(format);
HTML5 拖放规范 规定了一个 drag data store mode。这可能会导致预期外的结果,即 DataTransfer.getData() 没有返回预期值。
这个例子展示了 {{domxref("DataTransfer")}}对象的{{domxref("DataTransfer.getData()","getData()")}}和{{domxref("DataTransfer.setData()","setData()")}}方法。
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)">
<span id="drag" draggable="true" ondragstart="drag(event)">drag me to the other box</span>
</div>
<div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
#div1, #div2 {
width:100px;
height:50px;
padding:10px;
border:1px solid #aaaaaa;
}
function allowDrop(allowdropevent) {
allowdropevent.target.style.color = 'blue';
allowdropevent.preventDefault();
}
function drag(dragevent) {
dragevent.dataTransfer.setData("text", dragevent.target.id);
dragevent.target.style.color = 'green';
}
function drop(dropevent) {
dropevent.preventDefault();
var data = dropevent.dataTransfer.getData("text");
dropevent.target.appendChild(document.getElementById(data));
document.getElementById("drag").style.color = 'black';
}
{{ EmbedLiveSample('Example', 600) }}
| Specification | Status | Comment |
|---|---|---|
| {{SpecName("HTML WHATWG", "interaction.html#dom-datatransfer-getdata", "getData()")}} | {{Spec2("HTML WHATWG")}} | |
| {{SpecName("HTML5.1", "editing.html#dom-datatransfer-getdata", "getData()")}} | {{Spec2("HTML5.1")}} | Initial definition |
{{Compat("api.DataTransfer.getData")}}
{{page("/en-US/docs/Web/API/DataTransfer", "See also")}}