各位高手
请问一个jsp页面通过服务器解析后,返回到客户端的HTML格式的文件,是存放本地的哪个文件目录下的?
在返回的HTML格式的文件中,我如果修改页面中的js代码,能否产生效果?
比如:如果我将submit按钮,点击事件中,加一些alert(1);或者去掉一些校验js代码;在页面上点击按钮能否产生效果?为什么?

解决方案 »

  1.   

    jsp会先变成servlet然后servlet中的流out.("<html>XXXX<html>")记得应该是这样!
      

  2.   

    F:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\score\org\apache\jsp
    score是我的项目在 这个文件夹中就有jsp对应的servlet,也就是那些java文件。
      

  3.   

     首先那,我们知道xx.jsp在服务器会解析成一个xx_jsp.java的servlet,这个类其实继承与org.apache.jasper.runtime.HttpJspBase并且实现了HttpServlet接口。
    为什么我们在jsp中能够使用9个隐含对象是因为在类中的_jspService()中,已经声明了。
    服务器会静态的HTML不做解析,只对java代码做解释。这都是在服务器上的事,所以不会放到你的本地。
    我们客户端每次只是发送请求,服务器通过解析后,使用隐含对象out给输出到页面上。
    所以,当你打开客户端的html源代码,进行修改肯定不起作用。因为每次请求的是服务器的代码。
      

  4.   

    你可以把返回给客户端html源码存一份到本地来改
    呵呵
      

  5.   

    简而言之,页面的内容是由服务器端产生的,你在本地加上JS代码,如果不是异步传输的话,只是在你的本地有用,但是如果你加上了类似于AJAX代码的JS,那么你的JS代码则是完全无用,另外再补充一句,你的JS代码也只有你自己看到,没多大用处和意义