使用Prototype - Simulate.js模拟单击和更改

时间:2013-12-03 12:03:06

标签: javascript jquery ajax prototypejs

我有以下原型代码作为观察者,我试图在手动设置选择值后触发观察者......

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

我原本试图通过jQuery以多种方式解决这个问题,直到我意识到它不起作用。然后我采用了this answer中概述的脚本'event.simulate.js'。我现在遇到的问题是控制台显示以下错误......:

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

我认为我的代码是正确的......:

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

可以看到网页(如果它有用)here.我希望这是一个简单的解决方案,并且会感谢任何和所有指导,即使它是关于如何处理不同的建议。

谢谢!

1 个答案:

答案 0 :(得分:0)

$()方法仅通过id选择此语句

$('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()