from:internet

五 关于由传入的参数来判断性别,且使与参数相应的性别被选中的问题
   <td align="right"><bean:message key="性别"/></td>
   <logic:equal name="user" value="0">
     <td align="left">
    <html:radio property="sex" value="0"/>男
    <html:radio property="sex" value="1"/>女
  </td>
   </logic:equal>
   <logic:equal name="user" value="1">
     <td align="left">
    <html:radio property="sex" value="1"/>男
    <html:radio property="sex" value="0"/>女
  </td>
   </logic:equal>
这里其实是将在参数不同的情况下,将value的值进行了调换,在页面上可以达到需要的效果,但是假如要对性别进行修改,则在对应的Action中还要进行处理,也就是当由性别为女改为性别为男时,在Action中对sex要进行处理,当sex=0时,使sex=1,当sex=1时,使sex=0
<html:radid>中没有checked,所以不能简单套用html语法
这个问题困扰了我相当长的一段时间,因为我觉得struts框架没有理由搞得比html语法还不好用的啊,但是偏偏的确如此,我至少目前这样认为,在radio选中方面,struts是没有html方便的,我在网上也搜索了比较久,但从来没见到过一个说得清楚的,甚至见到一些错误的答案,还自以为正确,这让我感到可笑与悲哀,比如,在我发的贴的回复中,有个好心人说,这个要在Action里设置,但是我左试右试,还是不行;后来见到一个结了贴的帖子,有个方法,如下:
//如果degreed==初级的话
<logic:equal  name="degree" value="primary">
<html:radio property="teachertitleradiogroup" value="primary" checked />初级
<html:radio property="teachertitleradiogroup" value="middle"/>中级
<html:radio property="teachertitleradiogroup" value="high"/>高级
</logic:equal>
 //如果degreed==中级的话
<logic:equal  name="degree" value="middle">
<html:radio property="teachertitleradiogroup" value="primary" />初级
<html:radio property="teachertitleradiogroup" value="middle" checked />中级
<html:radio property="teachertitleradiogroup" value="high"/>高级
</logic:equal>
。。。。。。
这个帖子得到了全部的分数50分,肯定回帖人和发贴人都认为这个是对的了,但是我就感到了悲哀,struts里面<html:radio>明明是没有checked的,然而这里却偏偏用了checked,且自以为对,我真想问问这个发贴人和回帖人,你们经过实践检验过了吗??
六、Cannot find bean xxxx in any scope
     造成这种错误的有几种原因,我就只说一种网上比较少的原因:
     往往是直接在浏览器中访问JSP页面造成的;如果在jsp页面中有对bean的引用,而直接在jsp访问的话就会报错了,struts是不允许这样做的。
     错误引用形式为: http://127.0.0.1:8080/test/test.jsp
     正确引用形式为: http://127.0.0.1:8080/test/test.do(后缀随你定义的不同而不同) 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值