2012-08-15 98 views
1

需要幫助的jQuery的驗證檢查的這部分:如何檢查輸入驗證等於「0」,只有「0」?

if ($(this).val() == badTumblrInput && $(this).val() != "0") 

我需要只允許單個字符零(「0」),是在表達有效。

此代碼允許任何帶零(「0」)的內容有效。

感謝一位新手!

+0

如果你希望只允許單個字符零(「0」),是在表達有效的,那麼,爲什麼你使用'=「0」'!? – undefined 2012-08-15 21:43:23

+0

@undefined爲什麼不呢? – user1452893 2012-08-16 00:17:08

回答

4
if (this.value == '0') { 
    //the value was zero, the character zero, and only the character zero 
} 

FIDDLE

+3

不是'this.value'總是一個字符串? – 2012-08-15 21:37:03

+0

-1屬性'this.value'將返回一個字符串,例如'「0」,與數字「0」不一樣。你可以使用'=='運算符來使得「0」的比較結果爲真,但是在輸入中也可以例如「00000000000000000000000000000000」。 – Guffa 2012-08-15 21:38:15

+1

你應該在後面使用'$(this).val()'。我們不知道它是否只是 2012-08-15 21:38:26

4

你爲什麼要使用!=如果你希望它是相等的。但要回答你的問題,你應該使用!=====,這取決於你想要做什麼。

這些是精確的比較運算符,它們將類型(字符串,整數等)考慮在內。 例如:

('0' == 0) // true 
(false == 0) // true 
('0' === 0) // false 
(false === 0) // false 
('0' != 0) // false 
(false != 0) // false 
('0' !== 0) // true 
(false !== 0) // true 
+0

謝謝,這很有幫助。我想在第一個例子中得到結果,但是!=這與我正在使用的是相反的。 – user1452893 2012-08-15 22:06:38