Javascript 使用rails 4的链接触发jQuery的点击
我正在开发Rails 4应用程序。我需要使用javascript(或jQuery)触发点击链接。我认为:Javascript 使用rails 4的链接触发jQuery的点击,javascript,jquery,ruby-on-rails,html,Javascript,Jquery,Ruby On Rails,Html,我正在开发Rails 4应用程序。我需要使用javascript(或jQuery)触发点击链接。我认为: <%= link_to t('.fixture'), fixture_manager_tournament_path(format: :js), remote: true, id: 'fixture-link' %> 但他们都没有工作。 提前谢谢 编辑 @RustComet它应该取代我的一个div的HTML @RichPeck我的视野太大了。然后,为了避免较长的渲染时间,我尝试
<%= link_to t('.fixture'), fixture_manager_tournament_path(format: :js), remote: true, id: 'fixture-link' %>
但他们都没有工作。
提前谢谢
编辑
@RustComet它应该取代我的一个div的HTML
@RichPeck我的视野太大了。然后,为了避免较长的渲染时间,我尝试通过JS加载片段。我用这个信息:来实现这一点
我的视图有各种选项卡,它们都是通过JS加载的(除了一个)。然后,我向route添加了一个额外的参数,以便直接访问所需的选项卡。因此,我可以转到/tournament?active=fixture
并查看fixture
问题是,选项卡处于活动状态,但内容不在此处。(当然,ajax请求和回调在我点击链接之前不会触发)。这就是为什么我试图在该链接上模拟clic并加载相应的选项卡 解决了!我已经通过加载正确的JS并直接执行它解决了这个问题,使用“active”参数,无需点击链接。 谢谢所有帮助我的人 如果有人想知道,这就是我使用的代码(它的咖啡脚本):
虽然已经很晚了,你的问题已经解决了,但实际的解决办法是:)
您错过了
[0]
部分。是$(“#fixture link”)。单击()代码>产生任何类型的错误?您能否打开调试器并尝试访问$(“#fixture link”)
以查看它是否未定义
?中间一行应该可以。您是否已将JavaScript代码包装在$(document).ready()块中?@brito否,控制台中没有错误。如果我在控制台中访问$('#fixture link')
,它将返回正确的对象<代码>是否有可能JS事件实际上正在触发,但没有返回任何内容?为什么需要模拟单击?
<a id="fixture-link" data-remote="true" href="/manager/tournaments/1/fixture.js">Fixture</a>
$('#fixture-link').click();
$('#fixture-link').trigger('click');
$('#fixture-link').trigger('click.rails');
tournament = $('#main-wrapper').data('tournament')
$.get '/manager/tournaments/' + tournament + '/fixture.js', (data) -> data
$('#fixture-link')[0].click();