<%
String str1 = "abc";
%>
<%!
   private static void appendClassInfo(Element a, Channel b,String c)
      if (b == null|| b.getId()==6738)
        {  return; }
%>各位师傅,我想将6738用变量str1代替,也就是说b.getId的值由变量str1传入,代码该如何编写?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【luxio】截止到2008-07-01 22:12:20的历史汇总数据(不包括此帖):
    发帖的总数量:2                        发帖的总分数:80                       
    结贴的总数量:2                        结贴的总分数:80                       
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    敬礼!
      

  2.   

    晕。。在同一个页面的话。。
    <% 
    String str1 = "6738"; 
    %> 
    <%! 
      private static void appendClassInfo(Element a, Channel b,String c) 
          if (b == null ¦ ¦ b.getId()==str1) 
            {  return; } 
    %> 直接这样。不就行了??
      

  3.   

    <%!
       static String str1 = "abc";
    %>
    <%!
      private static void appendClassInfo(Element a, Channel b,String c)
    {
          if (b == null ¦ ¦ b.getId().equals(str1))
            {  return; }
    }
    %> 用<%! %>来声明你的变量 由于你的方法是static,所有加上staic如果你的b.getId( )返回是string的话,要用equals来比较
      

  4.   

    我不能这样来声明变量
    <%!  static String str1 = "abc"; %> 
    我没写明 我的 str1 以后是这样来的
    <% String str1= request.getParameter("channelid") %>
      

  5.   

    appendClassInfo(Element a, Channel b,String c) 给这方法加一个参数吧,这是我能想到的
      

  6.   


    你request get出来的值是什么不可以让他GET出来就是6738吗?
      

  7.   

    request.getParameter 出来的值是个字符串,也不一定6783,我的意思是就是把get出来的那个变量放到6738那个位置
      

  8.   

    ${param.str1}  =  request.getParameter("str1")
    (@*#^$(@^#$
      

  9.   


    那改成这样试试
    <%! 
      private static void appendClassInfo(Element a, Channel b,String c) 
          if (b == null ¦ ¦ b.getId().equals(%><%=str1%><%)) 
            {  return; } 
    %> 
      

  10.   

    放到参数里 如何
    <%!
      private static void appendClassInfo(Element a, Channel b,String c,String str1)
          if (b == null ¦ ¦ b.getId().equals(str1))
            {  return; }
    %> 
      

  11.   

    一个是int类型,一个是String类型
    真不知道LZ要干什么
    是这个意思吗?<% 
      String str1 = "abc"; 
      private static void appendClassInfo(Element a, Channel b,String c) 
          if(b == null || b.getId()==6738) 
          {  
             str1 = String.valueOf(b.getId());
             return; 
          } 
    %>
      

  12.   


    LZ 看下这样如何
    if (b == null ¦ ¦ b.getId().toString().equals(str1)) 
            {  return; } 
    因为你b.getId()是什么类型我不清楚,但是只要将它转变为String 类型 就应该直接可以用.equals()方法啦,
    你直接把参数传到哪里不就实现了你所说的就是把get出来的那个变量放到6738那个位置
    了么?
      

  13.   

    不一定非要用static的。比如你的jsp页面<%!
      public void appendClassInfo(Element a, Channel b,String c,String str1) 
          if (b == null ¦ ¦ b.getId().equals(str1)) 
            {  return; }  
    %>
    注意上面代码要加到jsp上面。然后在页面其他地方引用时,使用<%
       String str=request.getParameter("XXX");
       appendClassInfo(a,b,c,str);  
    %>
    就可以了。
      

  14.   

    抱歉,刚才写的那个有些出路。
    因为你的方法是static 所以这里不能直接引用b.getId().toString().equals(str1))
    你的转换下,将你要传的参数转换为静态才可以调用。 
            
      

  15.   

    当前页  ${变量名}
    request 用 request 隐...变量
    session .....
    application......
      

  16.   

    //根据不同情况.
    <% 
    //如果Channel 类中的getId()返回的是int类型的话,
    int str1=Integer.parseInt(request.getParameter("xxx"));
    //如果Channel 类中的getId()返回的是String类型的话
    String str1 =request.getParameter("xxx"); 
    %> 
    <%! 
      private static void appendClassInfo(Element a, Channel b,String c) 
    //如果Channel 类中的getId()返回的是int类型的话,      if (b == null ¦ ¦ b.getId()==str1) 
            {  return; } 
    //如果Channel 类中的getId()返回的是String类型的话
            if (b == null ¦ ¦ b.getId().equals(str1)) 
            {  return; } 
    %> 
      

  17.   

    <% %>声明的是局部的.
    <%! %>声明的是全局的.<%
    String str1 = "abc";
    %>加个!就OK了
      

  18.   

    jsp插入java代码
    就按照java传的方式传
      

  19.   

     if (b == null ¦ ¦ b.getId()==Integer.valueOf(str1))
      

  20.   

    我再清楚的描述一下我的意思,重点不是数据格式转化,而是把jsp得到的参数传入声明的那个函数里边,即6738那个位置
    <% int str1= request.getParameter("channelid") %>
    <%! 
      private static void appendClassInfo(Element a, Channel b,String c) 
          if (b == null ¦ ¦ b.getId()==6738
            {  return; } 
    %> 
    将6738用变量str1代替,也就是说b.getId的值由变量str1传入,代码该如何编写?
      

  21.   

    Web 开发 强人 跑到这边玩了 呵呵
      

  22.   

    <% 
    String str1 = "abc"; 
    %>
    <%! 
      private static void appendClassInfo(Element a, Channel b,String c) 
          if (b == null ¦ ¦ b.getId().equals(%><%=str1%><%)) 
            {  return; } 
    %> 应该满足你的要求吧
      

  23.   


    <%! 
    String str1 = null; 
    %> 
    <%
      //str1=  reqest.get("参数"); 
      str1 = "abc"
      private static void appendClassInfo(Element a, Channel b,String c) 
         if (b == null ¦ ¦ str1.equals(b.getId())){  
            return; 
         } 
    %> 
      

  24.   

    楼主在考大家一个static函数中调用非静态变量的问题,其实就是在静态函数中实例出一个类对象出来,然后
    通过 对象名.str1来赋值
      

  25.   

    <%! 
      static String str1 = "abc"; 
    %> 
    <%! 
      private static void appendClassInfo(Element a, Channel b,String c) 

          if (b == null ¦ ¦ b.getId().equals(str1)) 
            {  return; } 

    %> 
    万事大吉