gpt4 book ai didi

javascript - Rails AJAX 远程 : true with dynamic id

转载 作者:行者123 更新时间:2023-11-30 15:46:54 24 4
gpt4 key购买 nike

我在 Rails 中实现了一个基本的 AJAX 调用,它运行良好:

index.html.erb

<a href="/days/new" data-remote="true" id="new_day_ajax">Add This day</a>

new.js.erb

$('#new_day_ajax').hide().after('<%= j render("form")%>');

问题是我在单个页面上使用以下循环生成了多达 31 个 a-tag,如上所示,无论我点击哪个链接,表单当然总是显示在第一个:

end_date.downto(start_date).each do |date|
[...]

为了让表单显示在点击的链接上,我尝试像这样动态生成 ID:

id="new_day_ajax_<%= date.strftime('%d') %>" <!-- i.e. new_day_ajax_07 -->

但现在我不知道如何将这个动态 id 传递到 new.js.erb 中。我如何知道 javascript 中的动态 ID?

提前致谢!

最佳答案

.erb View 中,您可以传递GET 参数并从params 对象中获取它

index.html.erb

<a href="/days/new?date=<%= date.strftime('%Y-%m-%d') %>" 
data-remote="true"
id="new_day_ajax_<%= date.strftime('%Y-%m-%d') %>">Add This day</a>

例如:

<a href="/days/new?date=2016-10-08" 
data-remote="true"
id="new_day_ajax_2016-10-08">Add This day</a>

new.js.erb

$('#new_day_ajax_<%= params[:date] %>').hide().after('<%= j render("form")%>');

关于javascript - Rails AJAX 远程 : true with dynamic id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39931491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com