2011-11-18 4 views
0

Я использую Combobox скрипта автозаполнения jQuery UI. , но теперь я должен реализовать функцию, которая скрывает каждую возможность второго выпадающего списка, у которого нет того же идентификатора, что и выбранный, после выбора записи первого.обработчик события с автозаполнением jQuery UI - Combobox

может быть немного понятнее:

выберите один: kundenauswahl

выберите два: jobauswahl

если опция в "kundenauswahl" является selectet, скрипт должен проверить опционам во втором select/combobox они имеют одинаковый идентификатор, чем выбранный вариант «kundenauswahl», если это так, эти параметры должны быть показаны, если не эти параметры должны быть скрыты ...

Я не знаю, где я перепутался, но со сценарием я написал сейчас, моя страница остается пустой после загрузки ... сообщения об ошибке в Firebug ...

может быть, кто-то может помочь?

Я уверен, что есть некоторые сбои MOR внутри этого сценария ...

Я был бы рад, если з/о может помочь мне ... :-(

вот код:

$(document).ready(function() { 

     $("#kundenauswahl").combobox({ 
      selected: function(event, ui) { 
       var optionid = document.getElementById("kundenauswahl")[document.getElementById("kundenauswahl").selectedIndex].id; 
       changeoptions(optionid); 
       return; 
      } // selected 
     }); // combobox 

     $("#jobauswahl").combobox({ 

     }); //combobox 

    }); // ready(function()) 


function changeoptions(kundenid) { 
    var idtoshow = kundenid; 
    for (var counter = 0; counter < document.getElementsByName("joboption").length; counter++) { 
     if (document.getElementsByName("joboption")[$counter].id == idtoshow) { 
      document.getElementById(idtoshow).style.display = "block"; 
     } else { 
      document.getElementById(idtoshow).style.display = "none"; 
     } 
    } 
} 

ответ

0

у вас есть опечатка с переменной «$ счетчика» вместо «счетчика». также, если вы используете JQuery, почему бы не пройти весь путь? Например, используйте

$('#kundenauswahl option:selected')[0].id

вместо:

document.getElementById("kundenauswahl")[document.getElementById("kundenauswahl").selectedIndex].id

Наконец, может быть, вы будете иметь проблемы при загрузке страницы, если не выбран ни один вариант.

+0

спасибо за эти подсказки, но он все еще не работает :-( –

+0

ok У меня снова работает страница - я забыл определить идентификаторы для параметров. :-D, но все же кажется, что обработчик не работает, t work ... –

+0

Что значит «обработчик не работает»? выбранная функция не называется? или она не делает то, что вы думаете? BTW, 2 трюка для отладки ситуации - использовать консоль .log («xxx») и alert («xxx»), первый напишет текст на консоль отладки (если ваш браузер поддерживает его), и последний выведет сообщение на экран, чтобы вы могли указать, где находится интерпертер и вы можете показать разные переменные. Кроме того, хром-отладчик является потрясающим IMHO – idanzalz

Смежные вопросы