我昨天刚遇到这个问题
比如在JSP里面有个变量id
要在JS里面调用就用
location="a.jsp?ID=<%=id%>";
这样就可以实现在JS里面调用JSP里面的变量

解决方案 »

  1.   

    还不如让JSP顺便生成一个隐藏的域,js不就可访问了,参数多了也烦
      

  2.   

    谢谢,我知道了javascript里可以用jsp变量的,但是我现在jsp中的变量只能在<body>下面在能得到(struts结构的,用<bean:define>得到.)那么我就不能用body的onload事件了,该用什么事件呢
      

  3.   

    在JS里JSP的变量是不可以使用的,但变量值是可以得到的
    JSP是在服务器端解释的,如果不嫌慢,你要不就在提交回服务器处理一次这种情况,通常是这样实现的 <input type='button' name='meke' <%=isDisable?" disabled ":""%>>
      

  4.   

    谢谢楼上的,马上结分.
    其实我之所以要在onload的事件中实现按钮可用与否,是因为我的按钮tag是自定义的,
    不能在其中直接加"disabled" . 
    现在我已经解决了.送分了,希望各位高手今后继续扶持小女子啊.顺便贴出部分代码.
    <script>
      ....
          function init(obj) {
              var i=0;
              var elements = document.forms[0].elements;
              if(obj=="disabled") {           
                  while(i < elements.length) {
                      if((elements[i].type=="submit") && 
                         ((elements[i].value=="確認") || (elements[i].value=="削除"))) {
                              elements[i].disabled="true";
                      }
                  i++;              
                  }
              }
          }
      ......
    </script>
    </head>
         <bean:define
           id="strSystemID"
           type="java.lang.String"
           name="OutputForm"
           property="<%= IconstData.HID_SYSTEM_CODE%>"/>
        <%
            String  strDisabled = "";        
            if ((strSystemID != null) && strSystemID.equals(IconstData.SYSTEM_ID)) {
               strDisabled = "disabled";
            }      
         %>
    <BODY onload="init('<%=strDisabled%>')">
       ......
      ......
     <app:aid id="<%=IconstData.AID_S21030204 +"4"%>" value="確認"></app:aid>
     <app:aid id="<%=IconstData.AID_S21030204_CHANGE + "2"%>" value="変更"></app:aid>          
     <app:aid id="<%=IconstData.AID_S21030204_DELETE + "3"%>" value="削除"></app:aid>谢谢!