1.前言.
有时候你的jsp的文本里面用js的innerHtml的时候,会找不到引用的js文件里面的方法。因为有些浏览器比如ie7,有时候是不认innerHtml外面的script文件的,怎么办呢?很简单,就是直接在innerHTML里面再加上<script>标签,直接拼起来是可以的,但不是很方便,推荐用append,在你的引用的html后面追加一个<script>标签。
2.例子.
function getRootPath() {
//获取当前网址,如: http://localhost:8080/ems/Pages/Basic/Person.jsp
var curWwwPath = window.document.location.href;
//获取主机地址之后的目录,如: /ems/Pages/Basic/Person.jsp
var pathName = window.document.location.pathname;
var pos = curWwwPath.indexOf(pathName);
//获取主机地址,如: http://localhost:8080
var localhostPath = curWwwPath.substring(0, pos);
//获取带"/"的项目名,如:/ems
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
return(localhostPath + projectName);
}
var script = document.createElement("script");
script.src=getRootPath()+"test.js";
//需要在页面申明testDivId这个div.
var objTestDiv=document.getElementById("testDivId");
objTestDiv.innerHTML("This is Test!");
//关键句
objTestDiv.appendChild(script);
3.总结。
在js里面获取根目录是可以的,在innerHtml的同时,额外导入js也是可以的。
有时候你的jsp的文本里面用js的innerHtml的时候,会找不到引用的js文件里面的方法。因为有些浏览器比如ie7,有时候是不认innerHtml外面的script文件的,怎么办呢?很简单,就是直接在innerHTML里面再加上<script>标签,直接拼起来是可以的,但不是很方便,推荐用append,在你的引用的html后面追加一个<script>标签。
2.例子.
function getRootPath() {
//获取当前网址,如: http://localhost:8080/ems/Pages/Basic/Person.jsp
var curWwwPath = window.document.location.href;
//获取主机地址之后的目录,如: /ems/Pages/Basic/Person.jsp
var pathName = window.document.location.pathname;
var pos = curWwwPath.indexOf(pathName);
//获取主机地址,如: http://localhost:8080
var localhostPath = curWwwPath.substring(0, pos);
//获取带"/"的项目名,如:/ems
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
return(localhostPath + projectName);
}
var script = document.createElement("script");
script.src=getRootPath()+"test.js";
//需要在页面申明testDivId这个div.
var objTestDiv=document.getElementById("testDivId");
objTestDiv.innerHTML("This is Test!");
//关键句
objTestDiv.appendChild(script);
3.总结。
在js里面获取根目录是可以的,在innerHtml的同时,额外导入js也是可以的。