文字コンマとドル記号をテストして削除する次の onkeyup コマンドがあります。
onkeyup="if (/(?:[a-zA-Z]|\s|,|\$)+/ig.test(this.value)) this.value = this.value.replace(/(?:[a-zA-Z]|\s|,|\$)+/ig,'')"
ドル記号を除くすべてで機能します。
誰か助けてくれませんか?
ありがとう、ブルズ
文字コンマとドル記号をテストして削除する次の onkeyup コマンドがあります。
onkeyup="if (/(?:[a-zA-Z]|\s|,|\$)+/ig.test(this.value)) this.value = this.value.replace(/(?:[a-zA-Z]|\s|,|\$)+/ig,'')"
ドル記号を除くすべてで機能します。
誰か助けてくれませんか?
ありがとう、ブルズ
任意の文字列を単なる数字にクリーンアップしようとしている場合は、数字ではないすべてのもの (整数が必要であると仮定) を空の文字列に置き換えることで、エッジ ケースを少なくします。
this.value = this.value.replace( /[^0-9]/, '' );
HTMLはバックスラッシュを、正規表現ではなく、インライン HTML 文字列をエスケープするものとして解釈します。次のコードは$
.
<body onload='alert("\$");'> // prints '$', not '\$'
2回エスケープするか、正規表現をインラインhtmlから関数に移動する必要があります。
正しい答えは、次のように に置き換えること\$
だと思います。\\$
onkeyup="if (/(?:[a-zA-Z]|\s|,|\\$)+/ig.test(this.value)) this.value = this.value.replace(/(?:[a-zA-Z]|\s|,|\$)+/ig,'')"