angle2プロジェクトの単純な数値検証を試みています。しかし、私は以下に書かれたJavaScriptコードを複製することができません。角度2のキー押しによる検証
Htmlの
<input type="text" class="textfield" value="" id="extra7" name="extra7" onkeypress="return isNumber(event)" />
JavaScriptの私はhtmlファイルをコンパイルすることができませんreturn isNumber(event)
を実行しようとしましたangularJS2のための今
function isNumber(evt) {
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode != 46 && (charCode < 48 || charCode > 57))) {
return false;
} else {
return true;
}
}
。 Rx.jsエラーが発生します。もし私がreturn
を取り除くと、それはコンパイルされますが、うまく動作しません。
私はAngularJS2の世界で何かを見逃していますか?
詳細が必要な場合は教えてください。
更新
私はangular2でそれをやっているこの方法です。ここではreturnキーワードを削除するとkeypressを得ることができますが、isNumberメソッドから返ってきたものは使用できません。
PS:私はこの特別な仕事をすべて行っています。Firefoxの入力タイプ番号は、フォーム投稿時の番号を確認しています。そして、AngularJS2は、ajax post afaikを与えるために、フォームポスト(完全なHTMLポスト)をバイパスしています。
'onkeypress'はネイティブ属性ですが、angleでバインドすると' on'プレフィックスが失われます。 – rinukkusu
そのリンクまたはドキュメントですか?私が角度で見る唯一のことは、「htmlのすべてのネイティブ要素を使用しましょう」と言っています。 –
https://github.com/angular/angular/blob/ae75e3640a2d9eb1e897a0771d92b976c5a42c75/modules/%40angular/platform-browser/src/web_workers /ui/event_dispatcher.ts – rinukkusu