如何使用jquery异步加载jsp?

时间:2014-06-03 17:02:50

标签: jquery ajax jsp asynchronous file-io

我有一个parent.jsp取决于一组其他jsps(大约40个) 目前,我将所有40多个子jsps包含在父jsp中。 因此,parent.jsp的页面加载速度非常慢。 我试图异步加载childx.jsps来解决这个时滞问题。

进行了一些搜索并在线找到了一些实用程序代码。试过这样的事情:

//async.js
    (function($) {
    $(function() {
        $('[data-async-url]').each(function() {
            var $this = $(this),
                url = $this.attr('data-async-url');
            $.ajax({
                url: url,
                dataType: 'html',
                type: 'get',
                success: function(html) {
                    $this.replaceWith(html);
                }
            });
        });
    });
})(jQuery);

在parent.jsp中 - 我按如下方式添加childx.jsps:

<div id="child1" data-async-url='/pages/child/one.jsp' /></div>
<div id="child2" data-async-url='/pages/child/two.jsp' /></div> 

当我尝试加载parent.jsp时 - 我在浏览器控制台中发现以下错误:

> GET http://localhost:8080/pages/child/one.jsp 404 (Not Found)  
> GET http://localhost:8080/pages/child/two.jsp 404 (Not Found)

我的项目结构如下:

>     MyProject
>      | - WebContent
>          | - script
>              | - async.js
>          | - pages
>              | - child
>                  | - one.jsp
>                  | - two.jsp 
>                  | - parentFolder
>                       | - parent.jsp

我给的相对路径似乎在某些地方出错了。尝试了几种组合,但似乎没有任何效果。任何帮助将受到高度赞赏。

另外,将dataType指定为&#34; HTML&#34;是否正确?当试图加载&#34; JSP&#34;。 尝试&#34; JSP&#34; dataType没有用。

0 个答案:

没有答案