<c:if> <c:forEach>标签在jsp里起不了作用了?

2024-12-01 16:55:45
推荐回答(4个)
回答1:

FOREACH标签部分.

  1. 首先确认MAP中有没有取得数据.

     FOREACH标签含义:  items存放被迭代的集合对象, var用来存放现在指到的成员。

  3. var元素输出的参数需要与MAP中存放的参数对应,(通常用一个JAVABEAN对像封装放在LIST等集合对像中).案例中的,NAME等值是否在JAVABEAN中存在.如果存在,EL表达式写法为: ${entry.name}即可直接输入,其他值也是一样.


IF标签部分.

  EL表达式有自己的判断方式,无法直接用==,!=,>=,<=直接判断.

  如果要判断封装对像是否为空.请用empty关键字....


以下是IF标签与FOREACH综合用法的示例:




        
           ${list.id}
           ${list.name}
          ${list.pwd}
        
 
 


 
未能找到数据!
 



为了能更好的显示出FOREACH的效果.通常先用choose标签进行判断,以下是JSP页面中的完整标签片段示例:(IF标签不再举例.)


    
      ID
      用户帐号
      用户密码
      管理
    
 
   

        
          ${list.id}
          ${list.name}
          ${list.pwd}
          
       编缉
  
          
      
删除
              

  
        
 
   
  
      
          未能找到符合条件的数据!
      
  
   

回答2:

首先,检查下你标签是否有导入正确。
其次,检查输出下你所取的值是否为空。
最后,以上两点检查都未出错,建议关闭重启下编辑器,然后多刷新几次(有时编辑器会抽风的)。

回答3:

你的写法有很多种可能性出问题,按照以下方式排错
第一:如果是不可用,那么jsp页面访问的时候会报错
第二:输出是空,证明你的map没有值
第三:如果你是第一次访问这个页面,那么你没有去访问action,当然map不会有值
第四:如果你是从aciton 里面返回的这个页面,那么你检测下action里面的map是否有get 方法
第五:如果是你servlet 那么你有没有把这个值存入到session ,session 名称为map
第六: 里面的判断语句不要写==null 这样不规范,我的建议写法:
以上的分析如果你都对了,那么请在action或者你是servlet 中打印下你取得的数据,如果有数据,那么错误就在返回和页面上了,如果没有那么源头就出错了
如果你还有什么不明白的,请继续追问

回答4:



是不是打错单词了