The DataTransferItem.getAsString() method invokes the given callback with the drag data item's string data as the argument if the item's kind is a Plain unicode string (i.e. kind is string).




A callback function that has access to the data transfer item's string data. See Callback below for details.

Return value



The callback parameter is a callback function which accepts one parameter:

The drag data item's string data.

The callback return value is undefined.


This example shows the use of the getAsString() method as an inline function in a drop event handler.

function drop_handler(ev) {
 var data = ev.dataTransfer.items;
 for (var i = 0; i < data.length; i += 1) {
   if ((data[i].kind == 'string') && 
       (data[i].type.match('^text/plain'))) {
     // This item is the target node
     data[i].getAsString(function (s){; 
   } else if ((data[i].kind == 'string') && 
              (data[i].type.match('^text/html'))) {
     // Drag data item is HTML
     console.log("... Drop: HTML");
   } else if ((data[i].kind == 'string') && 
              (data[i].type.match('^text/uri-list'))) {
     // Drag data item is URI
     console.log("... Drop: URI");
   } else if ((data[i].kind == 'file') && 
              (data[i].type.match('^image/'))) {
     // Drag data item is an image file
     var f = data[i].getAsFile();
     console.log("... Drop: File ");


Specification Status Comment
HTML Living Standard
The definition of 'getAsString()' in that specification.
Living Standard Initial definition.
HTML 5.1
The definition of 'getAsString()' in that specification.
Recommendation Snapshot fo HTML WHATWG document

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Basic supportChrome Full support 4Edge Full support YesFirefox Full support 50IE No support NoOpera Full support 12Safari No support NoWebView Android Full support YesChrome Android Full support YesEdge Mobile ? Firefox Android Full support 50Opera Android No support NoSafari iOS No support NoSamsung Internet Android ?


Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown

See also

Document Tags and Contributors

Contributors to this page: fscholz, dikirill, erikadoyle, teoli, Sheppy, rolfedh, AFBarstow
Last updated by: fscholz,