struts if标签对字符也许字符串的判断

struts if标签对字符或者字符串的判断

      今天做项目使用到了strut的if标签,但是又遇到了神奇的事情,如下

<s:if test="#session.centainstu.state == '在校'">

OK,没有问题。但是,

<s:if test="#session.centainstu.bednum == 'C'">

就无法正常执行。

原来"C"仅仅是个字符,而上面那个是个字符串,而==左边的表达式返回的字符串型的,故不能判断为true。

解决办法:

将C转换成字符串型,如下:

<s:if test="#session.centainstu.bednum == 'C'.toString()">

或者

<s:if test='#session.centainstu.bednum == "C" '>

注意外面是单引号。里面试双引号

还有

<s:if test="#session.centainstu.bednum ==(eq) \"C\" ">