En regex-literal ska stå inom //.Regex koll på en textbox
Jag vill kolla varje tangentnedslag i min textbox om det är ett otillåtet tecken. Är det otillåtet så skall bakgrunden bli röd. min labbkod ser ut som nedan. Vad är galet
<code>
<%@ Page Language="VB" %>
<script runat="server">
</script>
<html>
<head>
<script language="JavaScript">
function test(obj) {
var str = obj.value;
var re = ^[-+]?([0-9]*\.[0-9]+|[0-9]+)$;
var matches = re.exec(str);
if(obj.value=="") {
obj.className='';
}
else if (obj.value!="" & matches!=null) {
obj.className='wrongmessage';
}
document.getElementById("Label1").innerHTML = obj.value.length
}
</script>
<style type="text/css">.wrongmessage {BACKGROUND-COLOR: #ff0000}
</style>
</head>
<body>
<form runat="server">
<asp:TextBox onkeyUP="test(this)" id="TextBox1" runat="server"></asp:TextBox>
<asp:Label id="Label1" runat="server" text="Label"></asp:Label>
</form>
</body>
</html>
</code>Sv: Regex koll på en textbox
<code>
var re = /^[-+]?([0-9]*\.[0-9]+|[0-9]+)$/;
</code>Sv:Regex koll på en textbox
varför validerar inte följande regex ett flyttal ?
<code>
var re = /^[-+]?([0-9]*\.[0-9]+|[0-9]+)$/;
</code>
123,3 blir fel ...
Varför ?