javascript を使用して xforms 要素の値を変更し、その値でフォームを送信できるかどうか疑問に思っていましたか?
私が試したのは、<input type="file">
トリガーされたときに xforms:input のテキストを変更することです。フォームを送信すると、xforms:input が値を適用していないようです。
<div id="ubi" class="controls">
<xf:input ref="ubicacion"/>
<input class="input-file" id="fileadjunto" type="file" onchange="uploadfile()"/>
</div>
<script>
function uploadfile()
{{
var inp = document.getElementById('fileadjunto');
var name = inp.files.item(0).name;
var span1 = document.getElementById('ubi').getElementsByTagName('span')[0].getElementsByTagName('span')[0].getElementsByTagName('input')[0];
span1.value = name;
}};
</script>
スパンと入力を取得するのはなぜですか? コンソールで xforms:input 要素を確認すると、次のように変換されていることがわかります。
<span .....>
<span.....>
<input..../>
</span>
</span>