0

Orbeon Form Builder で入力フィールドを使用していますが、ユーザーが Form Runner で入力しない場合、フォームデータが xml としてサービスに送信されるときに、「null」というテキストを入力する必要があります。XPath 式で計算値フィールドを定義する必要があるとします。どうすればいいですか?結果のxmlデータファイルに空の要素を入れたくないからです。

4

1 に答える 1

0

XForms でデフォルト値として 'null' を提供する最も簡単な方法は、最初にロードするドキュメント インスタンスで問題の要素または属性の値として 'null' を記述することです。shoesize要素をsockscolorデフォルトで にしたい場合は、nullそれに応じて XForms インスタンスを記述します。

<xforms:instance id="main" xmlns="">
  <mydata>
    <name></name>
    <age></age>
    <shoesize>null</shoesize>
    <sockscolor>null</sockscolor>
  </mydata>
</xforms:instance>

ドキュメント インスタンスを外部ドキュメントからロードする場合は、ユーザーが送信ボタンをクリックしたときのアクションの一部として、shoessize と sockscolor の値を設定するなど、より複雑なことを行う必要があります。何かのようなもの:

<xforms:trigger>
  <xforms:label>Submit</xforms:label>
  <xforms:action ev:event="DOMActivate">
    <xforms:setvalue ref="shoesize"
                     if=".=''"
                     value="'null'"/>
    <xforms:setvalue ref="sockscolor"
                     if=".=''"
                     value="'null'"/>
    <xforms:send submission="go"/>
  </xforms:action>
</xforms:trigger>

ただし、これは単なる一般的な XForms であり、FormRunner がこれを容易にするために必要な特別な機能を利用していません。

于 2012-12-13T01:49:29.137 に答える