js文件中调用jsp变量的问题

问题描述

两个相似的js方法都调用jsp变量,一个直接写在jsp文件中,另一个写成js文件,并在jsp中引入。test.js文件: function f1() { alert("<%=str %>"); }Myjsp.jsp文件: <% String str = "yes" %> ... <script type="text/javascript" src="<%=path %>/js/test.js"></script> <script type="text/javascript"> function f2() { alert("<%=str %>"); } window.onload=function(){ f1(); f2(); } </script>f1()方法输出不正确:<%=str %>f2()方法输出正确: yes说明js文件中调用jsp变量会有问题,请高手稍微指点一下啊,到底是什么原理 问题补充:蔡华江 写道

解决方案

js是否会被当作jsp解析,是看你的web.xml配置。如果你将js映射为default Servlet。那么就会当jsp解析,当然输出也是jsp。否则就使用默认的,根据MINE TYPE解析至于输出是否是js,也不是看后缀,而是Response的ContentType说白了,输入输出的只是流而已。
解决方案二:
原理就是js中的表达式是不会被解析的。只会原样输出。办法有2:其1,使用模板输出js,例如,jsp可以模拟所有的输出,你引用一个文件<script souce="test.js.jsp"/>在jsp设置头为application/x-javascript当然,你也可以使用其他任何模板工具进行输出。其2,在js文件引用前,设置一个变量,如Myjsp.jsp<script> var a = <%=str%>;</script><script source="test.js"/>test.js alert(a);看你愿用那个吧

时间: 2024-12-08 13:53:55

js文件中调用jsp变量的问题的相关文章

在JS文件中调用JS文件,可以不停的调用

js 今天本站的广告客户时代互连在本站做的全站漂浮广告,本来是本站已经预设置了一个JS的广告位,并且也有漂浮代码了!但是他们说漂浮的效果好象不好,让我换成他们的JS文件! 于是我开始搜索最终找到了在JS文件中调用其他的JS文件,并且把这种功能可以扩展下: 就是说在1.JS中调用2.JS,在2.JS中调用3.JS--    调用的方法和代码如下: 在1.js中输入下面代码可以调用2.js  document.write("<scr"+"ipt  language=java

js文件中调用js的实现方法小结_javascript技巧

方法一: Js_file01.js ======== 复制代码 代码如下: //程序代码 document.write(" <script language=\"javascript\" src="\/com\/ Js_file02.js \" > <\/script>"); 方法二: html代码 程序代码 复制代码 代码如下: <html> <body> <input type="

为什么要在cs文件中调用js函数

问题描述 我有个问题想问下大家,为什么有的时候要在cs文件中调用js函数,还有有时候要在js里面调用cs函数,一直比较迷惑,不是太清楚,能举个例子详细的介绍下吗谢谢了 解决方案 解决方案二:js调用cs的函数是ajax,cs调用js的函数,有时是为了实现某个特定的效果,才会这么做解决方案三:谢谢你的回答,不过能说得再详细点吗,我刚开始学习,好多地方不明白谢谢解决方案四:当然是实现需求了.服务端输出JS最典型的是response.write("<script>alert('notice

从JSP页面调用查询语句就报空指针,但是从java文件中调用缺显示正常

问题描述 <%}elseif("edit".equals(action)){Integerid=Integer.parseInt(request.getParameter("id"));CalendarDaocalendarDao=newCalendarDaoImpl();Calendarcalendar=newCalendarDaoImpl().findById(id); 这个是JSP文件里调用的findById方法,Calendarcalendar=cal

.js文件中的 javascript 无法在aspx页面中调用

问题描述 同样的代码,放在live的服务器上本机访问没有问题,javascript运行很正常(debugjavascript的选项已经打开),但是在local运行的时候出现很多objectexpected的问题,其中包括1.无法调用写在.js文件里的function2..js文件中无法调用写在aspx里的javascriptfunction3.在调试的时候会在aspx页面看到很多奇怪的字符,但是结束调试之后这些只是空格而已.想请问一下会什么会有这样的问题?放到测试和正式的服务器上都是很正常的,但

ASP.NET 后台如何调用前台引用的JS文件中的javascript函数??

问题描述 如题,我前台引用了JS文件,javascript函数写在里面.现在我在后台使用Response.Write(JS函数)来调用JS文件中的函数,编译调试的时候提示我要调用的函数不存在,请教下我该怎么做才能够在后台调用JS文件中我需要的函数. 解决方案 解决方案二:<HEAD><scriptlanguage="javascript"src="xxx.js"charset="gb2312"></script>

在html中引入外部js文件,并调用带参函数的方法_javascript技巧

在html中引入外部js文件,并调用js文件中的带参函数 1 项目结构 2 编写a.js.test.html //a.js function abc(str){ alert(str); } //test.html <html> <head> <script type="text/javascript" src="a.js"></script> <script type="text/javascript&

J2ME开发中如何从MIDlet中调用JSP页面

js|页面 首先,我将讨论一下HttpConnection接口,这个接口可以用来建立Http连接 HttpConnection 接口 Connected Limited Device Configuration(有限连接设备配置.简称CLDC).提供了一套用于网络连接的类,就是普通连接框架?一种平台独立连接框架,提供了一种分层的连接接口,它的实现操作系统由具体的设备简表提供(比如Mobile Information Device Profile(MIDP)). MIDP通过提供支持HTTP的Ht

如何从MIDlet中调用JSP页面

js|页面     首先,我将讨论一下HttpConnection接口,这个接口可以用来建立Http连接 HttpConnection 接口 Connected Limited Device Configuration(有限连接设备配置.简称CLDC).提供了一套用于网络连接的类,就是普通连接框架?一种平台独立连接框架,提供了一种分层的连接接口,它的实现操作系统由具体的设备简表提供(比如Mobile Information Device Profile(MIDP)). MIDP通过提供支持HTT