首先,我正在使用:
我的目标:
问题:
我该怎么做才能解决这个问题?欢迎任何提示。
答案 0 :(得分:10)
解决方案:
将占位符从“_”或“”或任何其他占位符更改为“”(空字符串),如下所示:
$(".cpfInput").mask("99999999999",{placeholder:""});
诀窍在于,如果你把任何占位符与空字符串放在不同的位置,插件会用占位符填充输入字段,当你粘贴某些内容时,它会在粘贴你想要粘贴的内容之前不清理它。 / p>
答案 1 :(得分:10)
您无需更改插件。您可以绑定粘贴事件并在粘贴之前清除内容。所以面具不会留下任何空间来阻止你制作粘贴物。
$('input.class').bind('paste', function () { $(this).val(''); });
答案 2 :(得分:4)
另一种解决方案:从输入中删除maxlength属性。插件本身会剪切额外的符号,但您可以正确地从缓冲区粘贴。
答案 3 :(得分:2)
有同样的问题,我找到的最轻松的解决方案,没有删除任何东西(占位符等):
$('input[placeholder]').on('paste', function(){
$(this).val(' ');
});
作为魅力:)
我找到了另一个解决方案:
$('input[placeholder]').on('paste', function(e){
e.preventDefault();
var clipboardCurrentData = (e.originalEvent || e).clipboardData.getData('text/plain');
window.document.execCommand('insertText', false, clipboardCurrentData);
});
答案 4 :(得分:1)
请尝试使用Formatter.js。我换了这个确切的原因。其另例如,当我从一个窗口转到另一个窗口获取电话号码时,我可能会添加三个号码,更改窗口以获取剩余的号码,然后返回,但是每次更改窗口时屏蔽的输入插件都会清除该字段。令人沮丧的用户体验!