Javascript 粘贴后从文本框获取值
我有一个这样的场景,其中我动态生成了文本框。 我必须验证文本框最多15个字符,并限制特殊字符 下面是在document.ready()中生成文本框和绑定的代码 将事件粘贴到它们Javascript 粘贴后从文本框获取值,javascript,jquery,Javascript,Jquery,我有一个这样的场景,其中我动态生成了文本框。 我必须验证文本框最多15个字符,并限制特殊字符 下面是在document.ready()中生成文本框和绑定的代码 将事件粘贴到它们 $(document).ready(function(){ //Generate textboxes..i have some logic by which i am generating //textboxes on the fly and giving textboxes a class flagText
$(document).ready(function(){
//Generate textboxes..i have some logic by which i am generating
//textboxes on the fly and giving textboxes a class flagText
GenerateFlagBoxes();
//i am binding the textboxes by class names
var $flagArea = $('.flagText');
$flagArea.bind('paste', function () {
var element = this;
setTimeout(function () {
alert($(element).val());
}, 100);
});
});
但这不起作用。我提供的警报不会出现。我认为在ready事件中创建的控件无法启动
一定要听事件。我错了吗?我不知道为什么会发生这种事。
我想要一些建议
提前谢谢
这把小提琴正在工作。我正在检查,我可能在某些地方出错。我将更新我的位置
我错了
是的,现在正在工作。在文档就绪中,我能够绑定粘贴事件。我在代码中的某些地方出错了。:)
感谢您的建议。对于动态元素,您需要一个事件委托,例如 试试这个:
$("body").on('paste', '.flagText', function () {
setTimeout(function () {
alert($(this).val());
}, 100);
});
尝试动态生成元素的事件委派-
$(document).on('paste','.flagText',function(){
var element = this;
setTimeout(function () {
alert($(element).val());
}, 100);
});
使用目标
var $flagArea = $('.flagText');
$flagArea.bind('paste', function (e) {
setTimeout(function () {
alert(e.target.value);
}, 100);
});
$(document).ready(函数(){…});请参阅我已更新..thanksWell,忽略
GenerateFlagBox()代码>,其余的工作正常。有JavaScript错误吗?“.flagText”选择器是否正确?或者,generateflagboxs()
是否正在生成具有错误类名的框?您的意思是说文档就绪处理程序。。。。??是的,你可以有你需要的任意多的处理程序(如果你真的需要)