我有一个输入文本框,我想用来自另一个对象发生的onclick事件的值进行更新。在这种情况下,我知道test.id0不正确,它需要是为paymentAmountOne动态生成的id。我试过使用绑定,但这不起作用。
<div id="minDueLinkDiv" class="normalLink" onclick="dijit.byId('test.id0').attr('value', '#{userInfo.minAmt}');">
<h:outputText id="minDueLink" styleClass="outputText" value="#{msg.minDue}"/></div>
<h:inputText required="true" tabindex="1" styleClass="inputText" id="paymentAmountOne" value="#{userInfo.paymentAmountOne}" style="width:115px" maxlength="15" >
<j4j:idProxy id="paymentAmountOne_"/>
</h:inputText>
感谢任何帮助。
我添加了.paymentAmountOne
这是渲染的内容仍无效。
<div id="minDueLinkDiv" class="normalLink" onclick="dojo.query('.paymentAmountOne').attr('value', '429.56');">
<span id="paymentAmountOne_" title="j_id_jsp_1879829640_2:paymentAmountOne"></span>
<div id="widget_j_id_jsp_1879829640_2:paymentAmountOne" class="dijit dijitReset dijitInlineTable dijitLeft inputText paymentAmountOne dijitTextBox" wairole="presentation" dojoattachevent="onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse" role="presentation" style="width: 115px;" widgetid="j_id_jsp_1879829640_2:paymentAmountOne" value="429.56">
我错过了什么吗?我也和dijit一起尝试过。
答案 0 :(得分:0)
您可以按班级查找输入。在你的情况下:
<div id="minDueLinkDiv" class="normalLink" onclick="dojo.query('.paymentAmountOne').attr('value', '#{userInfo.minAmt}');">
<h:outputText id="minDueLink" styleClass="outputText" value="#{msg.minDue}"/></div>
<h:inputText required="true" tabindex="1" styleClass="inputText paymentAmountOne" id="paymentAmountOne" value="#{userInfo.paymentAmountOne}" style="width:115px" maxlength="15" >
<j4j:idProxy id="paymentAmountOne_"/>
</h:inputText>
我不确定在dojo中按类查找,你可能需要适应它。
答案 1 :(得分:0)
谢谢mrembisz。我是JSF的新手,我没有意识到我可以通过设置表单id来消除表单中的动态ID
<h:form id="paymentForm">,
然后按照您的建议使用paymentForm:paymentAmountOne。
进行引用谢谢。