<% int a=1 %>方案一:  <script>
        var a=<%=a%>
        if(a==1){
        alert("1"); 
         }
         </script>方案二:  <script>   
         <%if(a==1){%>
         alert("1");
         <%}%>
        </script>当然不止一次的调用a,
    这两种方案那种好呀,不管从哪方面讲,为什么呀?
如果认为方案二好,能详细点不

解决方案 »

  1.   

    都不推荐,jsp是先编译后运行的。你的页面在java变量赋值前,已经被编译好了,后面再调用这个js方法,很可能里面的java变量没法用了。
      

  2.   

    如果排除  这种"很可能里面的java变量没法用了"可能,而且必须选一个,哪个更好呢
      

  3.   

    不好,页面最好不要使用JAVA代码,例如表达式<%= %>
    你可以是用EL表达式
      

  4.   

    我只问一句 写在JSP页面里 你怎么DEBUG?
      

  5.   

    抛过把JAVA代码放到页面上好不好这个问题,再来判断的话,是第二种方法好了第一,减少了在页面JS变量var的申明
    第二,把判断条件用JAVA代码处理的话,在前台页面用户是看不到的,有保护代码的功能你可以在页面点击右键,选择查看源代码,第二种情况只有在条件满足的情况下才会打印一个对话框,如果条件不满足的话,什么都不会打印!
      

  6.   

    上面已经有人说了 java给js赋值 就是在页面初始化的时候会赋值一次。
    一般可以使用一个全局的js变量接受,然后判断处理。
    最好不要奢望动态的使用java变量的值。
    第一种方法 勉强可以用。
      

  7.   

     
    现在我在javascript中必须用到java中的某个变量,这个变量的数值是通过数据库取得了如何使两者桥接起来比较好还有就是  我不能在java页面中写代码,只能在jsp中写代码如何办是好,为什么呢
      

  8.   

    jsp中,javascript 中,尽量不要有代码,这样做是根据mvc思想,页面就用来做展示,代码都放到 controller model 层去。
      

  9.   


    en ,你可以把java取值部分放到servlet中去做,然后直接在页面使用el表达式来取值。
      

  10.   

    你可以把你获得的参数传到javascript方法里啊!
      

  11.   

    如果你哪个jsp是用于共通的,或者是不用于向客户端输出的,但是又为了方便,这样是可以嵌入java脚本的,
    如果你哪个jsp是要向客户端展示的就不要嵌入java脚本了,大多数jsp页面上的数据是用过后台对象获取的,所以非常符合java面向对象的特点,如果要看你的程序好不好就看你的程序是否符合java特点了,加我qq群1543150073,