2014-09-11 26 views
6

的是,如果一個字符串是整數或不喜歡的方法,測試功能:測試,如果字符串整數使用jQuery

jQuery.isNumeric() 

我想測試一個輸入HTML元素:

<input id='distance' type='text' /> 

預先感謝您

+0

[檢查的可能重複一個值是float或int在jquery中](http://stackoverflow.com/questions/20311572/check-a-value-is-float-or-int-in-jquery)而這個http://stackoverflow.com/問題/ 3885817 /如何做檢查,如果一個數,是-FLO在 - 或 - 整數 – Dan 2014-09-11 13:37:12

+0

這就是函數。還有什麼事情你需要知道? – Barmar 2014-09-11 13:37:14

+0

@丹這不是重複的。這個問題是關於決定它是什麼,int或float。這個問題只是想知道它是否是任何種類的數字。 – Barmar 2014-09-11 13:38:39

回答

9

感謝您的貢獻我找到了答案:

if(Math.floor($('#distance').val()) == $('#distance').val() && $.isNumeric($('#distance').val())) 
{ 
alert('yes its an int!'); 
} 
+0

如何返回輸入876ffff654的警報?這不是真的。 – 2016-04-22 12:23:52

+0

檢查此鏈接請https://jsfiddle.net/9bprp320/ !!!! – 2016-04-22 14:46:50

+0

@BouraouiKACEM我查過了,你錯了 – 2017-09-13 15:42:01

-3

對不起,我沒注意到整數時,我回答說,這裏是另一種類型的檢查:

if($.type($(#distance).val())==="number") 

請參閱: http://api.jquery.com/jquery.type/

+0

它返回「字符串」,而不是「數字」,因爲輸入元素具有屬性:type = text – 2014-09-11 14:03:25

+0

:S謝謝,對不起。 – Techy 2014-09-11 14:05:52

-1

我用這個

function IsInteger(n){ 
    return Number(n) === n && n % 1 === 0; 
} 
+0

單獨的代碼塊並不能提供很好的答案。請添加解釋(爲什麼它解決了問題,錯誤在哪裏等) – 2016-01-12 20:45:54

+0

好吧 數字(n)返回NaN,所以如果'不是數字'它不會等於n。 如果是整數,n%1將返回0。 別的意思是你有一個浮點數 – Blake 2016-01-12 21:32:55

+0

IsInteger(「555445」)===> result = false – 2016-01-13 10:18:02