RegExp test-Function reagiert in IE und FF unterschiedlich
HaMa
- javascript
Mit jedem Klick auf den Button bekommt man im Firefox (1.5 / 2.) ein anderes Ergebniss, obwohl sich der zu testende String wie auch der reguläre Ausdruck nicht ändern.
Im IE funzt es.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
</head>
<body >
<script language="JavaScript"><!--
var vergl = "1234T ";
function versand() {
var erg = "keine Übereinstimmung";
var reg2 = /[0-9]{4}[A-Z]{1}/g;
if (reg2.test(vergl) == true) {
erg = "Stimmt";
}
alert(erg + " -" + vergl + "-");
}
--></script>
<form name="MailVersand" style="position:relative;margin:1mm;" >
<div>
Es wird immer gegen den Wert 1234T verglichen. Im Firefox ist beim ersten Aufruf der test positiv
beim zweiten negativ, beim dritten wieder positiv und so weiter...
</div>
<input type="button" onClick="versand();" value="Vergleich"/>
</form>
</body>
</html>
Hallo HaMa,
auch in Opera ist dies so. Warum kann ich Dir leider nicht sagen aber abhilfe schafft scheinbar, wenn Du den Ausdruck als Objekt speicherst - if (new RegExp(/[0-9]{4}[A-Z]{1}/g).test(vergl))
Mit freundlichem Gruß
Micha
Hallo Micha
Danke dir. So was habe ich gesucht.
mfG HaMa