使用rails 4的link_to触发jQuery单击
我正在开发一个Rails 4应用程序。 我需要使用javascript(或jQuery)触发链接中的单击。 在我看来,我有这个:
这会产生:
Fixture
注意remote: true
。 当我点击链接时,这工作正常,但我需要模拟点击js。 我尝试过:
$('#fixture-link').click(); $('#fixture-link').trigger('click'); $('#fixture-link').trigger('click.rails');
但他们都没有工作。 提前致谢!
编辑
@RustComet Comet它应该替换我的一个div的HTML …
@RichPeck我的观点太大了。 然后,为了避免漫长的渲染时间,我试图通过JS加载部分。 我已经使用了这个信息: https : //stackoverflow.com/a/15174908/3893506来实现这一目标。
我的视图有各种标签,所有标签都是通过JS加载的(除了一个)。 然后我在路由中添加了一个附加参数,以便直接访问所需的选项卡。 所以我可以去/tournament?active=fixture
并看看夹具。
问题是,标签处于活动状态,但内容不在此处。 (当然,直到我链接上的clic才会触发ajax请求和回调)。 这就是为什么我试图模拟该链接上的clic并加载相应的选项卡。
解决了! 我已经通过加载正确的JS并使用’active’参数直接执行它而无需点击链接来解决这个问题。 感谢所有帮助过我的人!
如果有人想知道,这是我用过的代码(它的coffeescript):
tournament = $('#main-wrapper').data('tournament') $.get '/manager/tournaments/' + tournament + '/fixture.js', (data) -> data
虽然它很晚,你已经解决了你的问题,但这是实际的解决方案:)
$('#fixture-link')[0].click();
你错过了[0]
部分。