3 回答
TA贡献1848条经验 获得超2个赞
Asp 控件在运行时更改 id,因此您无法捕获给定的 id。
因此,要捕获实际 ID:
选项1。
var $editor = ("#<%= editor.ClientID %>");
选项2,使用ClientIDMode="static"
。
<asp:TextBox ID="editor" ClientIDMode="static">...</asp:TextBox>
TA贡献1834条经验 获得超8个赞
绑定到粘贴事件,您必须设置超时以确保填充粘贴的值。原因是,粘贴事件不是立即发生的(4 毫秒),因此超时迫使队列进入概念顺序。
$("#foo").on('paste', function(e) { // <---- e, event
var pastedData = e.target.value;
setTimeout(function() {
console.log($(e.currentTarget).val());
}, 0);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea id="foo" rows="20" cols="50">
I am a working textbox example
</textarea>
TA贡献1784条经验 获得超8个赞
我已经弄清楚如何捕获粘贴的文本,这里是一个更新的 jquery 函数
$(document).ready(function() {
var $editor = $('#editor');
$editor.on('paste, keydown', function() {
var $self = $(this);
setTimeout(function(){
var $oldContent = $self.text(); // The old content in the control
var $pastedContent = $editor.val(); // Pasted content
// Clean data to meet requirements
$pastedContent = #pastedContent.replace(/(\r\n|\n|\r|\s+)/gm, " ");
$editor.val($pastedContent);
},100);
});
});
感谢所有提供帮助的人。
添加回答
举报