Ich habe ein wenig JavaScript-Code, die Schleife werfen in einer Liste, und erstellen Sie einen Schieberegler für jedes Element. Zweitens braucht es einen Event-Handler. Wenn also ein Schieberegler geändert wird, schreibt er den Wert in eine Eingabe.Javascript dynamische Ereignis in für
Wenn die für Lauf zum ersten Mal, ist alles in Ordnung, bekommt die Eingänge die Werte, aber wenn ich manualy den Regler ändern, es einen Fehler aus:
Uncaught TypeError: Cannot read property 'maxValue' of undefined
Der Code:
for (i = 0; i < sliders.length; i++)
{
noUiSlider.create(sliders[i].object[0], {
start: sliders[i].start,
step: 1,
connect: true,
range: sliders[i].range
});
sliders[i].object[0].noUiSlider.on('update', function(values, handle) {
if (handle) {
console.debug(sliders[i]);
sliders[i].maxValue.val(Math.floor(values[handle]));
} else {
sliders[i].minValue.val(Math.floor(values[handle]));
}
});
}
In dem Schieber Variable i haben diese:
var sliders = [
{
"object": $('#number-of-passangers'),
"start": [4, 6],
"range": {
"min": 2,
"max": 15
},
"minValue": $("#min-passanger"),
"maxValue": $("#max-passanger")
},
{
"object": $('#cost-per-day'),
"start": [3500, 65000],
"range": {
"min": 3500,
"max": 65000
},
"minValue": $("#min-cost"),
"maxValue": $("#max-cost")
},
]
Was Schieber tut enthält, wie wir Länge mit sliders.length bekommen? nirgends ist es im Code definiert. Können Sie den vollständigen Code posten? –
Schieber ist eine einfache Variable: 'var Schiebern = [ \t \t \t \t { \t \t \t \t \t "Objekt": $ ('# number-of-Passagiere), \t \t \t \t \t„Start „: [4, 6], \t \t \t \t \t "Bereich": { \t \t \t \t \t \t "min": 2, \t \t \t \t \t \t "max": 15 \t \t \t \t \t}, \t \t \t \t \t "minValue": $ ("# min-Passagier"), \t \t \t \t \t "maxValue": $ ("# max-passagier") \t \t \t \t}, \t \t \t \t { \t \t \t \t \t "Objekt": $ ('# Kosten pro Tag), \t \t \t \t \t "Start": [3500, 65000], \t \t \t \t \t "Bereich": { \t \t \t \t \t \t "min": 3500, \t \t \t \t \t \t "max": 65000 \t \t \t \t \t}, \t \t \t \t \t "minValue": $ ("# min-cost"), \t \t \t \t \t "maxValue": $ ("# max-cost") \t \t \t \t}, \t \t \t] ' – tthlaszlo
Aktualisieren Sie die Frage und geben Sie den vollständigen Quellcode an. –