我需要在具有 maxLength 属性的输入中获取所有粘贴的字符串。
但是在“onpaste”事件中,没有属性可以获取所有粘贴的字符串。
例如,使用此字符串检查以下代码段:
“AAAAA-BBBBB-BBBBB-BBBBB-BBBBB”
输出为:“AAAAA”
但我需要所有的字符串。
const onPasteFn = (e) => {
setTimeout(() => document.getElementById("demo").innerHTML = e.target.value, 0)
}
<input type="text" maxLength="5" onpaste="onPasteFn(event)" />
<p id="demo"></p>
最佳答案
考虑使用 clipboardData
从事件中,您可以使用 getData()
抓取从剪贴板粘贴的文本,如下所示:
const onPasteFn = (e) => {
document.getElementById("demo").textContent = (e.clipboardData || window.clipboardData).getData('text');
}
<input type="text" maxLength="5" onpaste="onPasteFn(event)" />
<p id="demo"></p>
见示例 here从文档。注意
|| window.clipboardData
的回退用于 IE 支持。
关于javascript - 如何在具有 maxLength 属性的输入中获取所有粘贴的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63213204/