javascript - 您如何为输入框上的 URL 捕获事件

标签 javascript jquery

我有一个 Web 表单,其中包含一个用于 URL 的文本输入框。当我将 url 从浏览器(我使用的是 firefox,但如果可能的话,我希望它也能在其他浏览器中工作)地址栏拖到输入框时,它会将 url 文本插入到任何预先存在的文本中。我希望 url 覆盖任何现有文本。

我想我可以在添加删除的文本之前捕获一些事件并简化任何现有文本。

如果可以使用 jQuery 进行设置,那很好,否则使用简单的 javascript。

编辑

这似乎可行:

$("#myinput").bind("drop", function(e) {  
      e.currentTarget.value = "";  
      return true;  
});

我不确定哪些浏览器支持此事件,但如果它是最现代的浏览器,那应该没问题。

最佳答案

如果您的目标是 ie、firefox 3.5+、safari 或 chrome,ondrop 事件应该有效。您可以使用 Dr.Molle 提供的表单,也可以使用 javascript 设置 ondrop 处理程序。

//for ie must use this syntax or the html version
document.getElementById('myInput').ondrop = function(e){
    //doesn't have to be jquery here
    //using window.location because I can't test e.dataTransfer.getData('Text') right now
    $(this).val(window.location);
}

关于javascript - 您如何为输入框上的 URL 捕获事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6311800/

相关文章:

javascript - 尝试使用 Discord 机器人将用户消息从十进制转换为十六进制

javascript - CircleType 文本在 rotateY 之后删除空格

javascript - 当我从下拉列表中选择一个选项时,jQuery typeahead 停止工作

javascript - Iscroll div 不工作

javascript - rxjs 流程和 ngrx 选择器的问题

javascript - 从麦克风获取音频数据作为数组

javascript - 数组上的正则表达式

Javascript:架构资源管理器 Chrome 扩展循环需要忽略不相关的嵌套元素

javascript - 如何使用 jQuery 或 javaScript 授予用户仅输入 1 到 100 之间的数字的权限

jquery - 我需要在 asp.net 中屏蔽文本框