donnerkai
Goto Top

Javascript Prüfung nach Wert

Hallo,

ich möchte mit einem Javascript abprüfen ob eine Eingabe in einem Textfeld einem vorher definiertem Katalog entspricht.

Ich habe es zunächst so gelöst:

{
alert("Die Nummer ist falsch");
document.Formular.jvanummer.focus();
return false;
}


jetzt möchte ich aber nicht nur auf die 523 und 524 prüfen, sondern auf 50 weitere Werte.
Gibt es dafür eine kürzere Lösung als meine?
ja 50 mal schreiben.

Für eine Lösung wäre ich dankbar

Content-Key: 196748

Url: https://administrator.de/contentid/196748

Printed on: April 18, 2024 at 18:04 o'clock

Member: Hitman4021
Hitman4021 Jan 10, 2013 at 11:04:55 (UTC)
Goto Top
Hallo,

ja gibt es.

Ungetestet!
suchbegriff = new Array(523, 524, ..., element_n);

if (notinArray(suchbegriff, document.Formular.Kontrollnummer.value)
{
alert("Die Nummer ist falsch");  
document.Formular.jvanummer.focus();
return false;
}

function notinArray(arr, val){
	for(i = 0; i < arr.length; i++){
		if (arr[i] == val) return false;
	}
	return true;
}

Gruß
Member: nxclass
nxclass Jan 10, 2013 updated at 12:57:19 (UTC)
Goto Top
Hallo,
möchte dazu noch meinen Senf geben:
/**
 * PHP's in_array() alias 
 * @param value   mixed value
 * @return bool
 */
Array.prototype.hasValue = function(value)
{
    for (var key in this ) {
        if (
            ( Object.prototype.toString.call( this[key] ) === '[object Array]' && this[key].hasValue(value) )  
            || this[key] === value
        ) {
            return true;
        }
    }
    return false;
}
nun kannst du einfach prüfen mit:
/* @var myval  dein Array mit den Werten */
if (myval.hasValue( 3 )) { }

... die 50 Werte kannst du Dir auch dyn. holen wenn diese nicht im JS stehen sollen.
Member: Hitman4021
Hitman4021 Jan 11, 2013 at 11:00:38 (UTC)
Goto Top
Hallo,

wenn es das war
How can I mark a post as solved?
nicht vergessen.

Gruß