現在、Android デバイス用のハイブリッド アプリを構築しています。ojInputNumber コンポーネントを使用して、数値キーボードをデバイスに強制的に表示しようとしています。残念ながら、コンポーネント バインディングでは常に type="text" が返されます。
特性を含むオブジェクトのリストがあり、特性をループしている間、次のスニペットが entrytype に基づいて画面に読み込まれます。
<div class="inputNumberWraper" data-bind="if: trait.getEntryType() === 'MANUALNUM'">
<input class="inputNumer"
data-bind="attr: {id: trait.getTraitCode()}
, ojComponent: {component: 'ojInputNumber'
, value: trait.getValue()
, min: trait.getMinValue()
, max: trait.getMaxValue()
, optionChange: changeListener
, required: trait.isMandatory() }"/>
<span data-bind="ojModule:{name: 'inputComponents/inputNumberFixer'}" />
</div>
コンポーネントがバインドされた後、モジュール (inputNumberFixer) をロードしようとしました。jquery を使用して、入力タイプをテキストから数値に手動で変更します。
$(document).ready(function(){
$('.inputNumer').attr("type", "number");
$('.oj-inputnumber-button').hide();
});
これは、リストから別のオブジェクトを選択し、入力フィールドが「更新」されるまで機能します。変更した型はテキストに戻されましたが、inputnumberfixer は 2 回目に実行されませんでした。
このコンポーネントに入力タイプを数値にバインドさせる方法を知っている人はいますか?