有一个 HTML 文本区域。我能够在以下情况下捕获该事件:本地文件被拖放到文本区域上。但如何获取删除的文件名?(最后修改并插入到文本区域中。)
在这种情况下,以下表达式返回 None:
event.dataTransfer.files
event.dataTransfer.getData('text/plain')
我做了一个简短的例子火狐3这是我目前的目标平台。
<script>
function init() {
document.getElementById('x').addEventListener('drop', onDrop, true)
}
function onDrop(event) {
var data = event.dataTransfer.getData('text/plain')
event.preventDefault()
alert('files: ' + event.dataTransfer.files + ' && data: ' + data + '.')
}
</script>
<body onload='init()'>
<textarea cols=70 rows=20 id='x'></textarea>
这有点晚了 - 但我认为你正在寻找的是这样的:
event.dataTransfer.files[0].name
您还可以获得以下属性:
event.dataTransfer.files[0].size
event.dataTransfer.files[0].type
您可以使用以下命令循环访问这些文件:
var listOfNames='';
for(var i=0,tot=event.dataTransfer.files.length; i<tot; i++){
listOfNames+=event.dataTransfer.files[i].name + '\r\n';
}
顺便说一句 - 如果您使用 jQuery,则可以在此处找到 dataTransfer 对象:
event.originalEvent.dataTransfer.files[0].name
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)