rdPavel, тут написана причина:
https://learn.javascript.ru/introduc...войство |
Да
|
Nexus,
Спасибо за инфу! Почитал, почитал, пока еще не могу догнать точное решение, буду разбираться. Нужно просто Ваш код доработать... |
Nexus,
Браузер пишет Uncaught TypeError: невозможно прочитать свойство undefined неопределенного В HTMLSelectElement.getAvtoList (cp_avto.js: 9) var countryCode = sel.options[sel.selectedIndex].value; |
Цитата:
|
Rise,
Да нет, это перевод. |
Nexus,
Не могу понять, в одном месте пишет: Методы addEventListener и removeEventListener являются современным способом назначить или удалить обработчик, и при этом позволяют использовать сколько угодно любых обработчиков. В другом месте: addEventListener() для одного и того же объекта с теми же самыми аргументами не дает никакого эффекта - функция-обработчик регистрируется только один раз и повторные вызовы не влияют на порядок вызова обработчиков. Чего то я недопонимаю :( :-E |
rdPavel, скорее всего речь идет об этом:
<div id="block"></div> <script>var block=document.getElementById('block'), i=2; func=function(){alert(++i);}, block.addEventListener('click',function(){alert(1);},false); block.addEventListener('click',function(){alert(2);},false); block.addEventListener('click',func,false); block.addEventListener('click',func,false); block.dispatchEvent(new Event('click')); </script> Алерт будет вызван только трижды со значениями 1-3, четвертого вызова не произойдет. Строки 5-6 - навешивание уникальных анонимных функций в кач-ве обработчика. Строки 7-8 - навешивание одной и той же функции на один и тот же элемент, и на одно и то же событие. Суть в том, что в строках 5-6 функции-обработчики уникальны, а в строках 7-8 в кач-ве обработчика выступает одна и та же функция, записанная в переменную. |
Nexus,
Я приблизительно понимаю о чем речь, но не могу догнать как склеить и реализовать с моими данными. Еще вопрос: Почему вот это срабатывает: <script> cp_id_387.onclick = function() { alert("Привет"); }; </script> а cp_id_387.onclick = function() { onchange="getAvtoList(this)"; }; cp_id_387.onclick = function() { getAvtoList(this); }; cp_id_387.onclick = function() { getAvtoList; }; Ноль эмоций... Уже что-то запутался я :blink: |
Короче только такое нашел решение:
Больше в голову ничего не лезет, может я зациклился <?php ob_start(); cp_show_form( $category->term_id, $listing ); $select=ob_get_contents(); ob_end_clean(); $select=str_replace('cp_id_387','cp_id_387" onchange="getAvtoList(this)',$select); $select=str_replace('cp_state','cp_state" onchange="getCityList(this)',$select); echo $select; ?> Оба поля Селекта работают на ура. Не знаю насколько это правильно но пока так. Нужно проверить на всех браузерах. |
Часовой пояс GMT +3, время: 01:16. |