id="address" ? 是不是少了 name="address" ? 我猜de!

解决方案 »

  1.   

    谢谢你的回答。JSF里面没有 name这个属性....
    window.opener.document.getElementById("address").value="Myaddress"; 这段javaScript代码已经成功执行,Textarea组件里面已经显示有值Myaddresss了,
    myBean在faces-config.xml也已经设置了。
    address在myBean里面也有get和set的方法。
    可是Textarea里面的那个值就是传不到myBean里面去。还有就是:
    在Textarea中手动输入Myaddress,就能给#myBean.address赋值,而通用javaScript代码调用把Textarea的值设为Myaddress就不能给#myBean.address赋值。(但是在提交页面能看见Textarea的值变为Myaddress,就是传不到后台去。)
      

  2.   

    <h:inputTextarea 少了forceId="true"否则需要form:address才能得到
    换inputText可以么?inputTextarea还没有这样用过
      

  3.   

    这句话我觉得是关键
    还有就是: 
    在Textarea中手动输入Myaddress,就能给#myBean.address赋值, 而通用javaScript代码调用把Textarea的值设为Myaddress就不能给#myBean.address赋值。(--------------------------------------------------------------------------------window.opener.document.getElementById("address").innerText="Myaddress";  这样看看吧!
      

  4.   

    <h:inputText .......></h:inputText>发布放在<h:form></h:form>之间值才能提交,你看看你是不是少了<h:form></h:form>
      

  5.   

    在JS方法里 你的组件是否设置了readonly?如果设置了的话无论是否值修改与否 后台都不会提交
      

  6.   

    是否再需要一个托管bean?
    你弹出对话框之后如果刚才的bean范围是request那么就失效 了。
    我也是猜的
      

  7.   

    问题解决了,谢谢大家留言
    原因是设置了readonly,原来为了附上客户自己填写而只能通过弹出窗口来选择,所以设置了readonly。问题就出在这里了。******************************************
    在JS方法里   你的组件是否设置了readonly? 如果设置了的话 无论是否值修改与否   后台都不会提交