Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在jsp页面中包含外部java脚本文件_Java_Javascript_Jsp - Fatal编程技术网

在jsp页面中包含外部java脚本文件

在jsp页面中包含外部java脚本文件,java,javascript,jsp,Java,Javascript,Jsp,我有一个名为paging.js的外部JavaScript文件。文件内容如下: function Pager(tableName,itemPerPage){ this.tableName = tableName; this.itemPerPage = itemPerPage; this.currentPage = 1; this.pages = 0; this.init()= function(){ alert("init called "

我有一个名为paging.js的外部JavaScript文件。文件内容如下:

function Pager(tableName,itemPerPage){
    this.tableName = tableName;
    this.itemPerPage = itemPerPage;
    this.currentPage = 1;
    this.pages = 0;

    this.init()= function(){
        alert("init called ");
        var rows = document.getElementById(tableName).rows;
        var records = (rows.length - 1);
        this.pages = Math.ceil(records / itemPerPage);
    }

    this.showPageNav = function(pagerName,positionId){
        alert("show page navi call");
        var element = document.getElementById(positionId);
        var pagerHtml = '<input src = "next.jpg" type="image">';
        pagerHtml += '<input src = "next.jpg" type="image">' ;
        element.innerHTML = pagerHtml;
    }
}
函数分页器(tableName,itemPerPage){
this.tableName=tableName;
this.itemPerPage=itemPerPage;
this.currentPage=1;
此参数为0;
this.init()=函数(){
警报(“初始调用”);
var rows=document.getElementById(tableName).rows;
var记录=(rows.length-1);
this.pages=Math.ceil(记录/项目每页);
}
this.showPageNav=函数(pagerName,positionId){
警报(“显示页面导航呼叫”);
var元素=document.getElementById(positionId);
var pagerHtml='';
pagerHtml+='';
element.innerHTML=pagerHtml;
}
}
现在,我尝试从jsp页面调用init,如下所示

<script type="text/javascript">
                        var pager = new Pager('results',7);
                        pager.init();
                    </script>

var pager=新的寻呼机(“结果”,7);
pager.init();
这段代码是我在jsp页面中完成主体部分之前编写的

为了包括这一页,我放了一行

<script type="text/javascript" 
                  src="${pageContext.request.contextPath}/js/paging.js"></script>

但是我不能调用init方法。有人帮我找问题吗?

试试看

<script type="text/javascript" 
                  src="js/paging.js"></script>

这一行代码就是问题所在:

this.init()= function(){
将其更改为:

this.init=function() {

使用.jsp 2.+技术,我将所有链接和脚本放在一个单独的文件中,并使用
指令引用该文件:

<jsp:include page="//path to your links_and_scripts page">

您如何无法调用
init
?你试过firebug吗?你能看到浏览器中加载的javascript文件吗?是的,如果我在页面中添加简单警报,它的工作很好。是的,你是对的,它在IE上工作。但是为什么简单警报工作,而这不工作。如果url是
http://baseurl/conextroot/somedir/myjsp.jsp
而JS就在context root下面。
<meta http-equiv="Content-Script-Type" content="application/javascript; charset=utf-8" />
<script src="// path to your scripts js"></script>
//...your other scripts and links here