我有这个生成异常的简单代码和平:(仅在 chrome 中)
未捕获的错误:NotFoundError:DOM 异常 8
场景:如果用户访问了 atextbox
并且没有输入值,他会在什么时候得到通知bluring
。
并且textbox
将用red div
. 如果他点击 - (为了输入一个值) - 红色的 div 被删除(由unwrap
文本框)。
所以
- 我有一个文本框。
- 此文本框附加了一个模糊处理程序。
- 当出现模糊时,我正在检查是否输入了一个值。
- 如果输入了一个值:一切正常。什么都没做。
- 如果不 :
- 我
alert
是用户 textbox
我用红色边框 包裹,- 我附上了一个
click event handler
,这样如果用户点击文本框(为了输入一个值),边框就会消失。
- 我
问题 :
当用户被提醒并red-div
包装时textbox
,每次我点击文本框(为了输入一个值) - 我得到异常(显然事情搞砸了)
问题:
Why
它发生了吗,how
我可以解决它吗?
代码:(JSBIN)
$("body").on("blur", ".myTb", function () {
if (!$(this).val()) {
alert('you must enter something!');
doWork($(this))
}
});
function doWork(obj) {
var t = $("<div class='divError'/>");
obj.wrap(t);
obj.on('click', function () {
obj.unwrap();
});
}
ps:
1)我想保留用红色 div 包装元素的想法,并在用户单击时将其删除(以便输入值)。(因为这是我插件的一小部分,它已经像这样工作了)
2)FF中没有问题
3) 镀铬版本:25.0.1364.97 m
4)jQuery:1.8