javascript - 通过javascript点击link_to

标签 javascript jquery ruby-on-rails ruby-on-rails-4

我一直在寻找一种如何使用 javascript 单击 link_to 标记的方法,但它似乎对我不起作用。

我有一个如下所示的 link_to:

<%= link_to "", require_match_path(vacancy_id: vacancy.id, employee_id: current_employee.id), :id => vacancy.id %>

我尝试使用一些 JavaScript 来执行

onMatch: function (item) {
        var myId = $("#matching > ul li:visible").last().attr("id");
        alert(myId)
        document.getElementById(myId).click();
        alert('done')
    },

该函数被调用(我收到警报),如果我在其中放置一些静态内容,例如 link_to 和 document.getElementById(1).click() 中的静态 id 1 ,它就会起作用;

但不知何故,当我尝试动态获取数据时,它似乎不起作用。我可以检查警报,它确实每次都能正确获取 id,但是当我通过它时,它什么也不做。

有人知道为什么吗?如果您动态获取 id,它会像字符串一样传递,我是否需要更改它,如果是这样,我该如何检查/修复这个问题?

简而言之:当我将静态数据放入其中时,我有一个可以正确执行 link_to 的函数。一旦我动态获取数据,它就不再起作用了。当我提醒我正在动态获取 ID 时,它确实给出了正确的数据。 (我的想法是它是以不可读的格式传递的,不知道我将如何从这里改变它。)

提前谢谢您。

最佳答案

使用 jQuery!

=link_to "my link", require_match_path(vars), id: "my_link"

然后在你的 jquery 中执行以下操作:

$("#my_link").click(function() {
  // this is how to bind a click
  event.preventDefault(); //for not following the link target
});

$("#my_link").click(); //call the click

关于javascript - 通过javascript点击link_to,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32973770/

相关文章:

javascript - 如何发送 JSON 但期望使用 AJAX/JQuery 响应纯文本?

javascript - Firefox 中的预加载图像不会在同一页面加载时从缓存中检索

javascript - Jquery 触发器触发了错误的表列

javascript - HTML 输入总是返回 0

ruby-on-rails - Rails 嵌套模型 - 删除关联

ruby-on-rails - Rails 时区问题

javascript - 在 JavaScript 中如何删除字符串的某些部分?

javascript - 获取数据属性onchange事件

javascript - 无法将类添加到单击的元素

ruby-on-rails - 使用 has_many :through 时连接模型中的验证失败