2013-12-03 2 views
2

Я следующий код прототипа выступает в качестве наблюдателя, и я пытаюсь провоцировать наблюдатель, после установки значения избранных вручную ...Симуляция нажмите и изменить с Prototype - Simulate.js

select.observe('change', this.onChange.bindAsEventListener(this)); 

Я изначально пытался уволить его несколькими способами через jQuery, пока не понял, что это не сработает. Затем я принял сценарий «event.simulate.js», как указано в this answer. Проблема я сейчас испытываю, что консоль показывает следующую ошибку ...:

Uncaught TypeError: Cannot call method 'simulate' of null scripts.js?v=56:701 

Я думал, что мой код был правильно ...:

$('div.amfinder-horizontal td:nth-child(1) select').simulate('click'); 

веб-страницы (если это полезно) можно увидеть here. Надеюсь, это легко исправить, и я бы оценил любое руководство, даже если это предложение о том, как обращаться с этим по-другому.

Спасибо!

ответ

0

Метод $() выбирает только через идентификатор, так это заявление

$('div.amfinder-horizontal td:nth-child(1) select').simulate('click'); 

недопустим - вы можете, однако сделать это

$$('div.amfinder-horizontal td:nth-child(1) select').first().simulate('click'); 

$$() метод селектор CSS, который возвращает массив элементов, которые соответствуют селектор. затем используйте first() или [0], чтобы идентифицировать первый элемент (или только) в массиве, который затем можно запустить методом simulate()

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