问题描述
|
我正在尝试将内置的jQuery小部件应用于动态内容,例如ajax调用或DOM操作(如克隆)。
目前,我有一些可行的方法,但有点破绽,并且我希望看到您提出的改进建议。要记住的是,JS是由PHP生成的,我想避免需要为单个页面创建JS的情况。现在,我可以定义一个窗口小部件类型,设置一些变量,然后让PHP生成JS。原因是我需要传递数据库中的变量,并即时将其提供给小部件。
jQuery(\'body\').delegate(\'.juiDateStart\',\'focusin\',function (e) {
$(this).datepicker({
\'minDate\': 0,\'onClose\': function () {
juiDtp_343875e72a11870172ae2922f7dd9f4f($(this));
}
});
});
上面的代码适用于克隆和Ajax,但是显然必须在每个focusin上启动日期选择器并不是一个理想的解决方案。我还在此系统中加载自动完成和级联选择。
提前致谢。
解决方法
每当您具有这样的动态创建的Javascript函数时,我认为您只能进行如此多的抽象操作,以免产生更多的开销。初始化每个focusin的此功能的方式似乎不错。
也许用更详细的逐类(或逐个id)选择器替换函数开头的“ body”部分会稍微加快此过程(即,当有很多项时)在页面上...),但目前(发布时)的方式似乎还不错。