我正在我的xform文件中创建Web服务字段。我的命运是有两个字段,例如:姓名和欢迎信息。方案是:用户在名称输入字段中写下他的名字,当他这样做时,在欢迎消息输入字段中显示来自Web服务的文本。我达到非常相似的效果,但使用按钮(触发器):用户写下他的名字,点击按钮,然后出现消息。我想在没有按钮的情况下这样做,使用一些改变的事件,但我不知道如何。
我的代码:
<fr:grid>
<xh:tr>
<xh:td>
<xf:input bind="name-bind" id="name">
<xf:label>Your name</xf:label>
</xf:input>
</xh:td>
<xh:td>
<xf:input bind="welcome-bind" id="welcome">
<xf:label>Welcome text</xf:label>
</xf:input>
<xf:trigger>
<xf:label>Generate welcome from WS</xf:label>
<xf:send ev:event="DOMActivate" submission="my-submission"/>
</xf:trigger>
</xh:td>
</xh:tr>
</fr:grid>
如果有人知道如何改变我的代码,达到描述的效果,请给我一些建议。
问候
答案 0 :(得分:1)
如果您希望在用户更改name
字段中的值并让该字段转到另一个字段(例如从字段中跳出)时运行提交,那么您可以写:
<xf:input bind="name-bind" id="name">
<xf:label>Your name</xf:label>
<xf:send ev:event="xforms-value-changed" submission="my-submission"/>
</xf:input>
除了DOMActivate
之外,您还可以添加xforms-value-changed
(ev:event
的值可以是以空格分隔的事件列表),如果您希望在用户按下时也提交提交在字段中输入值后,输入。