2011-09-08 214 views
0

这里是场景:jquery代码组织

我正在开发一个用servlet JSP编写的web应用程序。

基本上,控制器查看动作,调用调度到特定JSP的正确模型类。

因此,每个不同的视图都有一个JPS。并且有许多不同的UI视图。 (用户的仪表板,论坛,在论坛中特定线程,收件箱中的PM等等等等)

我使用jQuery和我安排我的代码的方式如下:

rootdir 
    |______ jsp 
    |_______ javescript 

jsp目录拥有所有的jsp文件。对于每个jsp文件都有一个对应的JavaScript文件,它包含我的jQuery($ .ready()...和与该页面相关的所有内容)。每个jsp文件都有一个引用该javascript文件的引用。

现在我有50个jsp文件,因此有50个.js文件。

有没有更好的方法来组织我的JavaScript文件。

--Jatin

回答

1

我通常建立我的JavaScript与一般用途的记住。例如,所有需要javascript的导航链接都可能使用一个.live()事件来处理,该事件根据链接的href或任何数据属性的存在来执行操作。

当涉及到jQuery UI的小部件,如datepicker和自动完成时,这些可以使用.live()以及全局定义。如果他们需要更多选项,请将它们放入数据属性中。

<input type="text" class="autocomplete" name="someautompletename" 
     data-options="{source: ['jQuery','Coldfusion','Railo','JavaScript']}" /> 

...

$(".autocomplete:not(.live)").live("click",function(e){ 
    var data = $(this).data("options"); 
    $(this).autocomplete(data ? data : {}).addClass('live').focus(); 
}); 

你也可以建立表格处理,以相同的方式工作。通过这种方式构建脚本,最终可以使用一个js文件来处理这些jsp页面的90%,同时在页面上包含需要多一些(例如对话框)的其他文件。