问题是这样的,我要在我的页面上引入一个js文件,但因为这个js文件里面嵌入了jsp代码,所以文件格式是.jsp的,
然后我想在一个页面引用它,
<script language="JavaScript" src="<%=request.getContextPath()%>/f9999.do?operate=getAddJs&prod_id=<%=id%>"></script>
但是这时候,页面上是没有id这个变量的,它是在这个页导入之后,在页面输入的,是从一个别的地方得到的,这时候,我才想执行导入js文件的代码,因为这时候
有了id,
各位大侠,有什么好办法,
然后我想在一个页面引用它,
<script language="JavaScript" src="<%=request.getContextPath()%>/f9999.do?operate=getAddJs&prod_id=<%=id%>"></script>
但是这时候,页面上是没有id这个变量的,它是在这个页导入之后,在页面输入的,是从一个别的地方得到的,这时候,我才想执行导入js文件的代码,因为这时候
有了id,
各位大侠,有什么好办法,
然后我想在一个页面引用它,
<script language="JavaScript" src=" <%=request.getContextPath()%>/f9999.do?operate=getAddJs&prod_id= <%=id%>"> </script>
但是这时候,页面上是没有id这个变量的,它是在这个页导入之后,在页面输入的,是从一个别的地方得到的,这时候,我才想执行导入js文件的代码,因为这…
晕...
function loadScript (url, callback) {
var script = document.createElement('script');
script.type = 'text/javascript';
if (callback)
script.onload = script.onreadystatechange = function() {
if (script.readyState && script.readyState != 'loaded' && script.readyState != 'complete')
return;
script.onreadystatechange = script.onload = null;
callback();
};
script.src = url;
document.getElementsByTagName('head')[0].appendChild (script);
}
<script language="JavaScript" src=" <%=request.getContextPath()%>/f9999.do?operate=getAddJs&prod_id= <%=id%>"> </script>
中的id值。
不知道为什么楼主不在服务器端确定这个ID,如果这样也就容易解决,按楼主的引用方式即可以了;
如果只能在客户端才能得到这个id,那这个 js 加载方式就不能用 <%=id%> 传值了,这分明是使用服务器端的变量 id。可考虑用下面的方式:var id='xxx'; //这里得到客户端的id\
document.write('<scri'+'pt language="JavaScript" src="<%=request.getContextPath()%>/f9999.do?operate=getAddJs&prod_id='+id+'"></scr'+'ipt>');
if(!$(sid))
{
var oJs = document.createElement("script");
oJs.setAttribute("id", sid);
oJs.setAttribute("src", sUrl);
oJs.setAttribute("charset", sCharset || "utf-8");
oJs.setAttribute("type", "text/javascript");
document.body.appendChild(oJs);
}
return true;
};fCommonGetScript("objjs","xxx.js");