2011-06-23 53 views
1

我正在加载如下所述的页面部分: Spring MVC - Open new page without reload。问题是在页面开始处执行的脚本不适用于加载的html,因为脚本执行时未加载html内容。使用Ajax加载部分页面时的脚本问题

与问题第一个脚本:

$(document).ready(function() { 
     $('#coclevel1').change(getLevel2); 
     $('#coclevel2').change(getCocItems); 
     ... 
    }); 

coclevel1和coclevel2是HTML选择。

第二个脚本是this脚本从here

我正在用Freemarker和JQuery开发Spring MVC 3.0 web应用程序。

如何将脚本应用到加载的html?

回答

1

调用.change()仅将处理程序附加到当前元素。使用.live()会将处理程序绑定到所有当前和将来的元素。

$(document).ready(function() { 
    $('#coclevel1').live('change', function(){getLevel2}); 
    $('#coclevel2').live('change', function(){getCocItems}); 
    ... 
}); 

http://api.jquery.com/live/

+0

谢谢您的回答。它有助于为第一个脚本问题找到解决方案。可以帮助我解决第二个脚本的问题吗? – Tural

+0

感谢您的回答。它有助于为第一个脚本问题找到解决方案。可以帮助我解决第二个脚本的问题吗? custom-form-elements.js有window.onload = Custom.init。我如何运行Custom.init以使未来的元素可行。我试着评论window.onload = Custom.init;并添加 \t $(文件)。就绪(函数(){ \t \t ... \t \t $(窗口).live( '负荷',initCustomForms); \t \t功能initCustomForms(){ \t \t Custom.init(); } 但它不起作用。 – Tural

相关问题