anzahl gewählte zeichen in select multiple
Markus
- javascript
0 Norbert Klein0 markus
hallo!
ich habe folgendes auswahlmenü:
<select name="arrayy[]" size="3" multiple onchange="check">
<option value="+++">3</option>
<option value="++">2</option>
<option value="+">1</option>
</select>
und ich möchte gerne prüfen, aus wie vielen zeichen die selektierten options nun schon bestehen.
die funktion check sieht so aus:
function check() {
var letters = 0, input_length = 0;
var typlist = new Array ();
for (var i=0; i < document.form.arrayy.options.length; i++) {
if (document.form.arrayy[i].selected) {
typlist.push(document.form.arrayy[i].value);
}
}
var message = typlist.join();
for (var i=1; i <= message.length; i++) {
if (letters > 4) {
break;
}
letters++;
input_length = i;
}
das ganze funktionierte auch perfekt, bis ich aus:
<select name="arrayy" ...
ein:
<select name="arrayy[]" ...
gemacht habe. dies brauche ich aber, da ich die eingaben mit php auslese. wie muss ich das javascript verändern, damit es nun doch klappt.
die fehlermeldung lautet:
'document.form.arrayy.options.length' ist Null oder Kein Objekt
vielen dank für eure hilfe.
gruß
markus
Hallo.
Ich hab mir das Script zwar nicht genau angesehn, aber die Änderung von
document.form.arrayy.options.length
in document.form.elements["arrayy[]"].options.length, bzw. von arrayy in elements["arrayy[]"] muss (vermutlich) an mehreren Stellen vorgenommen werden.
Gruß
Norbert
»»Änderung von
document.form.arrayy.options.length
in document.form.elements["arrayy[]"].options.length
Gruß
Norbert
hallo norbert,
vielen dank! folgendes hat sich als funktionsfähig herausgestellt:
for (var i=0; i < document.form.elements["arrayy[]"].options.length; i++) {
if (document.form.elements["arrayy[]"].options[i].selected) {
typlist.push(document.form.elements["arrayy[]"].options[i].value);
}
}
gruß
markus