How to get all of the pasted string, in input which has a maxLength attribute?(如何获得所有粘贴的字符串,在输入中有一个最大长度属性?)
问题描述
我需要在输入中获取所有粘贴的字符串,该输入具有MaxLength属性。
但在"onPaste"事件中,没有获取所有粘贴的字符串的属性。
例如,使用以下字符串检查下面的代码片段:
";AAAAA-BBBBB-BBBBB-BBBBB-BBBBB";
输出为:";AAAAA";
但我需要所有字符串。
数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">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>
|| window.clipboardData
的回退用于IE支持。
这篇关于如何获得所有粘贴的字符串,在输入中有一个最大长度属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!