范例
<%i=0;%>
onchange="get('<%=i%>')".
已知不可取  语法错误
onchange="get('${i}')";
失败
分别显示出<%=i%>
和空。
请达人帮忙。

解决方案 »

  1.   

    可以这样做:
    1、将你的全局变量i存到一个容器中,如application中,即:application.setAttribute("i",i);
    2、在JS中用这样的代码取得值:onchange = "get('${applicationScope.i}')"
      

  2.   

    补充onchange="get(<%=i%>)"
    也不成功
    为语法错误
      

  3.   

    <input type="hidden" id="gVar" value="<% jsp 输出变量值 %>" /><script type="text/javascript">
        function test(document.getElementById("gVar").value)
        {
        
        }
    </script>
      

  4.   

    如果要动态的,我建议,ajax 取。 因为js 是客户端执行。
      

  5.   

    把你所有的代码全供出来!
    onchange="get(' <%=i%>')";
    就单单这句代码来说,如果i的值里边没有'和"的话,是没有问题的如果有,需要将其转义!
      

  6.   

    要明白jsp的执行过程:
    服务器容器先将其弄为servlet的类(java)文件-编译为clsss文件-运行方法类似servlet,当到客户端时,已经是纯的html代码了。出错的话,看你哪里的语法有问题。就这种方式的写法是没有任何错误的
      

  7.   

    <%i=0;%> 是不是应该写为
    <% int i=0;%> ???
    写在<%%>里边的是java代码。必须要满足java的要求!!!
    java 是强类型语言
    javascript是弱类型语言,两者在语言的严密性上有根本的差异
      

  8.   

    关于int =0 这个是满足的。 是在不好意思。有些急了。没检查伪代码的严谨性。
    现在其最重要的,还是如何把做到用<%int i =0;%>这样的全局变量声明。来满足如何进行动态变量递增。
      

  9.   

    代码没有问题,就感觉楼主的onchange="get(' <%=i%>')"; 这里的单引号有点问题。