Это мой код snippt. Но код прерывается после внутреннего цикла. Но без сообщения об ошибке. Любая идея?Где ошибка в этом коде
Спасибо.
var lastnames = document.getElementsByClassName('box_nachname');
var firstnames = document.getElementsByClassName('box_vorname');
var teilnehmer = document.getElementsByClassName('select');
observers = [];
// iterate over nachname array.
for (var i = 0; i < lastnames.length; i++) {
// Create an observer instance.
observers[i] = new Observer();
// Subscribe oberser object.
for(idx in teilnehmer) {
if(teilnehmer[idx].id.split("_")[0].toLowerCase() !== "zl") {
var anynum = function(element) {
observers[i].subscribe(element, updateTeilnehmerSelectbox);
}(teilnehmer[idx]);
}
}
//on blur the Observer fire the updated info to all the subscribers.
var anynumNachname = function(j, element, value, observer) {
cic.addEvent(lastnames[j], 'blur', observer.fire(element, value));
} (i, lastnames[i], lastnames[i].value, observers[i]);
cic.addEvent(firstnames[i], 'blur', function(element, value, observer) {observer.fire(element, value)}(lastnames[i], lastnames[i].value, observers[i]));
}
Что касается упаковки 'anyNachname' в круглых скобках: есть опция JSLint для «Требовать парсеры вокруг непосредственных вызовов», которые требуют парсенов вокруг всей правой части задания, а не только функции. Поэтому параны вокруг самой функции излишни; Думаю, ты думал об обертывании всего призыва? –
Нет, у меня есть привычка обертывать определение функции, потому что это необходимо, когда ваше выражение начинается с определения функции. Я полагаю, когда однозначно, что определение функции является только значением r, parens не нужны. – Pointy
Чтобы прояснить этот комментарий: вам нужно явно сделать Javascript-парсер понятным, что вы не объявляете функцию в том случае, если хотите анонимную функцию для немедленного вызова. (Я знаю, что вы это знаете, @Bears, но разъяснение для потомков :-) – Pointy