为什么jquery包装执行内联javascript

我试图用内联javascript包装一个元素,它再次执行…这里是jsfiddle

谢谢

因为当JQuery包装DOM元素时,它会删除它,并将其作为新包装元素的子元素重新插入到DOM中。 如果它包含内联JS,它将被重新执行。 这就是它的工作原理。 这就是为什么你应该让你的JS远离DOM 🙂

如果你必须在那个脚本块中拥有你的JS,那么一个简单的hack解决方法是创建一个标志监听器/ setter,如下所示:

 

http://jsfiddle.net/AlienWebguy/uk67F/2/

当然我不建议在你的生产应用程序中创建像这样的窗口属性,但是概念validation就在那里,用它做你想做的事。