`
awtqty_zhang
  • 浏览: 90858 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

用表单(form)传值时出现其中一个值为null

    博客分类:
  • jsp
阅读更多

 

问题:更新数据库操作时出错 org.hibernate.TransientObjectException: The given object has a null identifier: domain.UserAccount

原因:ID没有传进去,去DAO方法中调用时发现没有IDIDnull.  因为在JSP

<input type="text" id="userId" name="u_id"  value="${user_acc.id}" disabled="disabled"/>  中使用了disabled="disabled",这样可以使文本框不能编辑,但form不能读取其中的值;

解决办法:改为readonly="readonly",这样可以使用文本框不能编辑,也可以使用form传值。

参考资料:

       相同点:

1  readonly是要锁定这个控件,通过在界面上无法修改他(但是通过javascript可以修改他)。

2disabled readonly有相同的地方也是可以锁定这个控件用户不能改变他的值,但是disabled的更彻底一些,他是要使你完全不能使用他,包括改变他的背景颜色(不信,你去修改一个被disabled掉的input文本框,你发现你是徒劳),如果是checkbox则不能选中他。

       区别:

1、客户端设置readonlydisabled和服务器端设置readonly效果一样。

2readonly的数据是可以提交到服务器的,disabled的数据是不可以提交到服务器的。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics