中易网

struts2 s:if 判断总是不对

答案:3  悬赏:50  
解决时间 2021-01-15 01:16
  • 提问者网友:我们很暧昧
  • 2021-01-14 11:20
struts2 s:if 判断总是不对
最佳答案
  • 二级知识专家网友:风格不统一
  • 2021-01-14 12:59
把71改为字符串试试
追问:试过了,我get传值是直接从数据库中取出来的,传的int值,在页面上71、‘71’,"71" 这三种形式的71都试过了,都是false
追答:数据库取出来的啊,你打印下 获取字符的长度你应该就知道原因了
追问:应该不是数据库的问题,我刚试了一下,改成直接内嵌java代码的话,就对了
<%if(Integer.parseInt(request.getParameter("cid2")) == 71){ %>
qweqweqwe
<%} %>
这样qweqweqwe就能输出来~~
追答:你好,我自己试了一下,你可以用来看下 #parameters.cid2应该是字符串数组
正确的写法为
sdfsdf321321

或者
sdfsdf321321

最好的做法是看debug的返回值类型,你看看就会明白的
追问:果然~~这样正确了,太感谢了~~~怪不得呢在action里取值的时候是request.getParameter,而这里是Parameters,多了一个s,成数组了~~~~~不过我又有疑问了,那为什么我在
这里查看结果的时候就能正常输出71 呢? 而不一定要写成这样的数组形式呢?
追答:你可以在地址栏中同时传递二个cid2 值来看看输出结果。我在上班,没法实验!你自己试试吧
全部回答
  • 1楼网友:酒醒三更
  • 2021-01-14 15:22
<s:if test="parameters.cid2 == 71">sdfsdf</s:if>
  • 2楼网友:青灯有味
  • 2021-01-14 13:47
试一下<s:if test="{java.long.Intger.parseInt(#request.cid2) == 71}">
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息