richfaces 使用问题集

1. java.util.NoSuchElementException

使用selectOneMenu或 rich:comboBox 时,valueChange或 画面提交 后报错

   1. java.util.NoSuchElementException   
   2. javax.faces.component.SelectItemsIterator.next(SelectItemsIterator.java:96)   
   3. ..........  

原因: list项目为空 (可能没有初始化 或 scope为request)

 

2. jsp画面在刷新时,局部产生抖动,或div位置发生变化(与上面部分的间隔增大或消除)

       原因: 可能是动态的改变了div里的内容导致

       临时解决方法: 在变动的位置上方 加入代码

<br style="line-height: 1px; display: block;" >
 

3. 使用richfaces-api-3.3.0.GA.jar 版本的rich:panel时,会产生多余的空白

     解决: . 在body onload 时对rich:panel生成的div 设置 style.display='none'

              . 使用margin

<rich:panel style="margin:-10px; " >

 

4. 使selectOneMenu项目对鼠标滚轮事件不响应

     在body onload里 设定

document.getElementById("pulldownid").onmousewheel = invalidwheel;

function invalidwheel()
{
 return false;
}

 

5. rich:calendar对鼠标滚轮事件不响应

    使rich:calendar弹出选择画面后,位置固定 (画面div不响应鼠标滚轮滚动,当滚动时关闭calendar)

 

function controllwheel(flg) 
{
 if (flg == 0)
 document.getElementById("scrolldivid").onmousewheel = function(){return false;};
 else 
  document.getElementById("scrolldivid").onmousewheel = function(){return true;};
}

<rich:calendar id="calendar" onexpand="controllwheel(0);" oncollapse="controllwheel(1);"/>

function closecalendar()
{
document.getElementById("calendar").component.doCollapse(event);
}

<div id="scrolldivid" οnscrοll="closecalendar();">

 

6. selectOneMenu与a4j:support一起使用时,如果需要监听selectOneMenu的valuechange事件,最好用

    a4j:support的actionListener , 不要用selectOneMenu的valueChangeListener

   另外,用了a4j后,最好把事件都放在a4j里,否则容易出现乱码

 

7. rich:calendar位置固定问题

    当rich:calendar放在div里时,不会随着div一起滚动,而是浮在画面上的固定位置

    原因是div的position没有设为absolute

     (这时rich:calendar是div的child)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值