在我的Rails應用程序中,我從@results變量加載一個表,使每個錶行都是@result。對於每個@result錶行,我正在尋找具有與@result關聯的按鈕。我正在嘗試爲每個按鈕使用javascript eventlistener,然後在js.erb文件中監聽事件如何添加一個事件偵聽器到每個按鈕的表格行結果?
運行應用程序時,它看起來像只有第一行按鈕有事件偵聽器,我怎麼能解決這個問題?
此外,我將如何能夠將我的@result傳遞給我的JavaScript,以便我可以利用該對象的部分?
我試圖通過JavaScript這樣做,因爲我想在到剪貼板複製的東西,將文件保存到計算機
js.erb
var copyTextareaBtn = document.querySelector('.button1');
copyTextareaBtn.addEventListener('click', function(event) {
# work with the @result that was clicked over here
});
html.erb
<% @results.each { |result| %>
<tr>
<td><%= result[:id] %></td>
<td>
<button class="button1"> B1 </button>
<button class="button2"> B2 </button>
<button class="button3"> B3 </button>
</td>
</tr>
<% } %>
嘿@cymen,謝謝你的回答!那麼你會知道我怎樣才能使用與@按鈕相關的「@result」? – chonglawr
@chonglawr我建議發佈另一個問題,但一種方法是將結果或其他屬性的id放在DOM按鈕元素上,然後單擊,使用該ID來確定哪個被點擊。還有其他方法,但也有很多選擇。 – Cymen