bei folgendem code komm ich nie in die if schlaufe. auch wenn s='' nicht.
im alert werden immer die richtigen werte angegeben, ausser halt beim letzten da steht immer null
wo ist also der fehler?
HTML-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
var s = sourceName.value;
var regex = '/'+s+'.*/';
var t = '';
for(i=0; i< targetName.length; i++){
t = targetName.options[i].value;
alert(t+regex+t.match(regex));
if(t.match(regex)!=null){
alert(t);
targetName.options[i].selected = true;
return true;
}
}
geschrieben von Daniel am 17.04.2005 - 19:50
Kannst du mal ne Seite hochladen wo man sich das ansehen kann...
geschrieben von okley am 17.04.2005 - 20:00
ne leider nicht, aber ich kann euch die parameter hardcodieren ;
function updateSelect(sourceName, targetName){
var s = sourceName.value;
s = '7';
var regex = '/'+s+'.*/';
for(i=0; i< targetName.length; i++){
t = targetName.options[i].value;
/* 7000, 7001, 7306, 6000 sind die werte die t annimmt */
alert(t+regex+t.match(regex));
if(t.match(regex)!=null){
alert(t);
targetName.options[i].selected = true;
return true;
}
}
}
geschrieben von okley am 18.04.2005 - 02:15
für die die es interessiert..., der fehler lag hier:
var regex = '/'+s+'.*/'; sollte
var regex = s+'.*'; heissen und schon geht alles :/
also ohne die / am anfang und schluss des ausdrucks