JSF页面逻辑处理出错

ladofwind 2011-08-30 03:54:37
我有个用户编辑页面,editUser.xhtml,

因为编辑用户和新增用户共用这个页面,所以用户ID需要在编辑状态设置成只读.

<h:inputText styleClass="midInput" disabled="true" value="#{userBean.user.userId}" rendered="#{userBean.type == 'update'}" id="userId" required="true" requiredMessage="用户ID不能为空" maxlength="8">
<f:validateLength minimum="1" maximum="8" />
</h:inputText>

<h:inputText styleClass="midInput" value="#{userBean.user.userId}" rendered="#{userBean.type == 'add'}" id="userId" required="true" requiredMessage="用户ID不能为空" maxlength="8">
<f:validateLength minimum="1" maximum="8" />


得到异常:

java.lang.IllegalStateException: component with duplicate id "editForm:userId" found

Caused by:
java.lang.IllegalStateException - component with duplicate id "editForm:userId" found


说userId重复 ,这种情况如何处理呢?

...全文
102 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
ladofwind 2011-08-30
  • 打赏
  • 举报
回复
后台处理太麻烦了, 这一段jquery的程序就可以了
ladofwind 2011-08-30
  • 打赏
  • 举报
回复
搞定了,用了这么一段

$(function() {
val = $('#editForm').find("[name='editForm:userId']").val();

if(val != ""){

$('#editForm').find("[name='editForm:userId']").attr('readonly','true');

}

});
softroad 2011-08-30
  • 打赏
  • 举报
回复
上面说错了。

js判断userid1,userid2 看看那个有值,直接url传参userId=有值的那个。
softroad 2011-08-30
  • 打赏
  • 举报
回复
userid1,userid2 然后去操作

后台判断,看看那个有值,直接url传参userId=有值的那个体。
ladofwind 2011-08-30
  • 打赏
  • 举报
回复
userid1,userid2 然后去操作

后台判断,看看那个有值,bean里面就set一下。

这样可以把
=================
这样应该是可以的, 就是代码有点ugly, 我不知道有没有别的简单的办法, js是一条路.
安心逍遥 2011-08-30
  • 打赏
  • 举报
回复
userid1,userid2 然后去操作

后台判断,看看那个有值,bean里面就set一下。

这样可以把
ladofwind 2011-08-30
  • 打赏
  • 举报
回复
用js控制呗,进入编辑状态,就把id的所在的h:inputText 设为只读。

=========
js怎么控制? 给个例子贝
ladofwind 2011-08-30
  • 打赏
  • 举报
回复
你的意思是 bean 里也定义俩 , userid1,userid2 然后去操作?

没有简单方法吗, 就为了一个一个输入框搞这么多修改感觉有些绕
zhu6100441 2011-08-30
  • 打赏
  • 举报
回复
用js控制呗,进入编辑状态,就把id的所在的h:inputText 设为只读。
softroad 2011-08-30
  • 打赏
  • 举报
回复
bean里的userid也要做相应修改
二佗 2011-08-30
  • 打赏
  • 举报
回复
上面说的都对。帮顶下
ladofwind 2011-08-30
  • 打赏
  • 举报
回复
改成了userid1,userid2 但 bean里的userid拿不到值了.
softroad 2011-08-30
  • 打赏
  • 举报
回复
editForm:userId

看form里userId重名的改成别的。

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧