如何在jQuery中检查粘贴剪贴板中输入的字母increase/decrease
How to check the increase/decrease of letter input in pasting clipboard in jQuery
我可以使用 keyup()
函数来检查我的用户是否在 input
中写了一些东西。
但是,当 剪贴板将 粘贴到那里时,我该怎么办?(使用鼠标,而不是键盘!)
$("#myInput").keyup(function(){
console.log("increase or decrease now!");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="myInput" />
“keyup”事件仅在(完成)键盘输入后触发,这意味着当您用鼠标粘贴内容时它不会触发。您可以改为使用“粘贴”事件,该事件仅在您将内容粘贴到输入字段后触发。但是你可以像这样组合“keyup”和“paste”:
$("#myInput").on("keyup paste", function(){
console.log("increase or decrease now!");
});
你也可以考虑一下“改变”事件。这仅在输入字段更改并失去焦点后触发。因此,您实际上可以将 keyup paste
替换为 change
或组合所有这三个以确保无论用户如何使用 keyup paste change
.[=16= 更改输入字段,它都会被触发。 ]
编辑:请注意 paste
事件在 Internet Explorer <= 10 中不起作用。(https://caniuse.com/mdn-api_window_paste_event)
我可以使用 keyup()
函数来检查我的用户是否在 input
中写了一些东西。
但是,当 剪贴板将 粘贴到那里时,我该怎么办?(使用鼠标,而不是键盘!)
$("#myInput").keyup(function(){
console.log("increase or decrease now!");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="myInput" />
“keyup”事件仅在(完成)键盘输入后触发,这意味着当您用鼠标粘贴内容时它不会触发。您可以改为使用“粘贴”事件,该事件仅在您将内容粘贴到输入字段后触发。但是你可以像这样组合“keyup”和“paste”:
$("#myInput").on("keyup paste", function(){
console.log("increase or decrease now!");
});
你也可以考虑一下“改变”事件。这仅在输入字段更改并失去焦点后触发。因此,您实际上可以将 keyup paste
替换为 change
或组合所有这三个以确保无论用户如何使用 keyup paste change
.[=16= 更改输入字段,它都会被触发。 ]
编辑:请注意 paste
事件在 Internet Explorer <= 10 中不起作用。(https://caniuse.com/mdn-api_window_paste_event)