2015-10-06 71 views
0

我一直在尋找一種方式如何點擊一個與JavaScript的link_to標籤,但它似乎並沒有爲我工作。點擊link_to通過javascript

我有一個的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,但是當我通過它時,它什麼都不做。

有沒有人有一個想法,爲什麼?如果你動態地獲取id,就像字符串一樣傳遞,我是否需要改變它,如果是的話,我該如何檢查/修復它?

簡而言之:當我將靜態數據放在那裏時,我有一個函數可以正確執行link_to。一旦我動態獲取數據,它就不再起作用了。當我提醒我動態獲取的ID時,它會提供正確的數據。 (我的想法是,它正在通過一個不可讀的格式,不知道如何我會從這裏去改變這一點。)

在此先感謝您。

回答

1

使用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 
+0

完美,謝謝! –