Oracle MAF 数字输入

Oracle MAF numeric input

我正在尝试从 Oracle MAF amx 文件调用 javascript 函数,以便只能在输入字段中输入数字键:

<amx:inputText required="true" showRequired="true" value="#{FSRBC.selectedFSR.time}">
  <amx:clientListener method="numbersOnly" type="keyDown"/>
</amx:inputText>

这里调用了一个js函数:

function numbersOnly (evt) {
  var _keyCode = evt.getKeyCode();
  var _filterField = evt.getCurrentTarget();
  var _oldValue = _filterField.getValue();
  if (_keyCode > 64 && _keyCode < 91) {
    _filterField.setValue(_oldValue);
    evt.cancel();
  }
}

js函数定义在它自己的文件中,validation.js 列在maf-feature.xml:

<adfmf:include type="JavaScript" file="resources/js/validation.js" id="i19"/>

但是 numbersOnly 不会被调用。我在第一行添加了 console.log 和 alert 调用,它们没有被执行。

有什么我遗漏的吗?提前致谢。

无需为数字键盘编写单独的脚本。 amx:inputText 有一个 属性 输入类型。将 "number" 设置为它。它将显示唯一的数字键盘。这个属性也支持email, tel, url.