2017-07-03 2 views
1

Ich habe eine Textbox und ich möchte überprüfen, ob es nur Zahlen enthält (ohne Leerzeichen und Sonderzeichen) onblur I don t wissen, wie die Regex Alarm überprüfen sollten, kommt wenn RegexTesten Sie die Regex OnBlur in Javascript?

<asp:TextBox ID="txtFromDate" runat="server" placeholder="Contract ID" onblur="checkValue(this.value)"> 

//JS CODE 
function checkValue(this) { 
    //regex ^[0-9+]*$ 
} 
+0

Auch siehe [überprüfen, ob der String nur Zahlen enthält, sonst zeige eine Nachricht] (// stackoverflow.com/q/10380937) und [Prüfe, ob ein Textfeld nur Zahlen enthält] (// stackoverflow.com/q/3032 3610) – Tushar

Antwort

1

versagt Warum nicht Benutzt NaN?

//JS CODE 
function checkValue(x) { 
    return isNaN(x); 
} 

Dies wird True zurückgegeben, wenn der Wert keine Zahl ist, sonst false, wenn es nicht ist.

+1

Es ist eine gute Lösung für die Überprüfung von Zahlen. Aber ich denke, OP will nicht, dass dot '.' erlaubt wird. für zB, '2.99' ist kein' NaN' –

1
<asp:TextBox ID="txtFromDate" runat="server" 
placeholder="Contract ID"> //Here you don't need any event as jquery automatically calls respective function when blur event occurs. 


$("#txtFromDate").blur(function(){ 
    var reg = /^[0-9+]*$/; 
    if (reg.test($("#txtFromDate").val())) { 
     alert("Your number is valid."); 
    } 
    else{ 
     alert("Your number is not valid."); 
    } 
}); 

Ich hoffe, es hilft.

1

Sie können test verwenden regex gegen den Eingang zu überprüfen,

function checkValue(val){ 
 
    if(!val || /^\d+$/.test(val) === false){ 
 
    \t alert('Failed') 
 
    } 
 
}
<input type="text" onblur="checkValue(this.value)" />

Wenn Sie Benutzer wollen nur numerische Daten dann diesen Beitrag beziehen sich auf den Typ sind erlaubt, HTML Text Input allow only Numeric input

+0

Regex schlägt fehl, wenn die Textbox leer ist, die ich nicht möchte –

+0

@AkhilJain Aktualisierte den Code und jetzt überprüfen –