1

適切に機能するが、すべての形式の 0 (0.0、0.00..etc) を考慮していない単純なスクリプトを配置します。これを実現する最も簡単な方法は何ですか? 多分parseFloat?

if(value !== "0") {
 alert('No sir this cant be empty');
 return false;
}

テキストボックスに 0 を入力すると、偽の罰金が返されます。ただし、0.0 を入力すると true が返されます。

4

5 に答える 5

4

parseFloat使用して比較することができます0

if (parseFloat(value) !== 0) {
    // complain
}
于 2013-11-02T01:54:45.373 に答える
1

はい、parseFloat できますが、値を引用符で囲む必要はありません。

value !== 0
于 2013-11-02T01:54:34.870 に答える
1

次のように、最初に実際の数値に解析します。

value = parseFloat(value)

if( value === 0 ) return false;

あなたは調べたいと思うでしょparseInt()parseFloat()

于 2013-11-02T01:55:12.733 に答える
0

おそらく、正規表現の一致を試してみませんか?

if (value.match(/^0(?:\.0+)?$/)) {
    alert("hey!");
}
于 2013-11-02T01:55:29.397 に答える
0

私が使用したいのはparseInt、最も単純なようです:

if(parseInt(value, 10) != 0) {
 alert('No sir this cant be empty');
 return false;
}

ただし、その前に必ず,と空の文字列valueに対してテストしてください。undefinednull

于 2013-11-02T02:04:10.917 に答える