在飞镖中消耗钥匙

时间:2014-08-21 06:41:53

标签: dart dart-polymer paper-elements

我有以下

  <paper-input floatinglabel
    id="frequency"
    label="Frequency"
    type='number'
    inputValue='{{frequency.frequency | asInteger}}'
    validate='{{digits_regex}}'
    error="{{errorMsg}}"
    on-keyUp='{{consumeKey}}'
    on-mouseout='{{publishInstance}}'>
  </paper-input>

鉴于类型是&#39;数字&#39;,只有当键输入是一个数字时,我希望在输入字段中看到任何内容。如何使用consumeKey函数实现它?

我还认为这可能是Dart内置的。是否有计划?

1 个答案:

答案 0 :(得分:1)

您无法阻止on-keyup上的输入,您只能使用on-keydown并且您的consumeKey方法应该如下

void consumeKey(KeyboardEvent e) {
  if(e.keyCode < '0'.codeUnits[0] || e.keyCode > '9'.codeUnits[0]) {
    e.preventDefault();
  }
}

如果您想允许其他字符,则必须延长条件以允许例如- + , .