Rails:AJAX Datatables 按钮打开 Modal
Posted
技术标签:
【中文标题】Rails:AJAX Datatables 按钮打开 Modal【英文标题】:Rails: AJAX Datatables Button to open Modal 【发布时间】:2021-12-09 20:57:54 【问题描述】:我正在将数据表更新为 AJAX。有操作按钮,一些重定向到其他页面,而我被卡住的那个会打开一个模式。我正在处理一个装饰器文件。
这是在没有模式按钮的情况下使用的代码:
def dt_actions
links = []
links << h.link_to(h.content_tag(:i, "", class: "fa fa-search") + " View", h.training_provider_client_path(context[:current_provider], object), class: "btn btn-primary btn-xs m-r-5px")
links << h.link_to(h.content_tag(:i, "", class: "fa fa-pencil") + " Edit", h.edit_training_provider_client_path(context[:current_provider], object), class: "btn btn-default btn-xs m-l-5px")
这是 AJAX 之前的代码行,我似乎无法像上面那样格式化:
a.btn.btn-success.btn-xs.m-l-5px.clients-issue-certs-modal-link> href="#" data-toggle="modal" data-target="#choose-course-modal0" data-client-id="#client.id"
=> fa_icon 'graduation-cap', text: 'Issue Certificates'
= fa_icon 'chevron-right'
也供参考,这是我能够转换的 AJAX 之前的两个***链接:
= link_to training_provider_client_path(client.owner, client), class: '' do
= fa_icon 'search', text: 'View'
- if policy(client).edit?
= link_to edit_training_provider_client_path(client.owner, client), class: 'btn btn-default btn-xs' do
= fa_icon 'pencil', text: 'Edit'
任何帮助将不胜感激!
【问题讨论】:
问题是你将如何编写a.btn.btn-succes.......
代码以像links << h.link_to...
中的其他代码一样添加?
嗨@arieljuod,我想是的,采用这种格式,但使用模态数据目标。
【参考方案1】:
我认为这应该可行
h.link_to(h.content_tag(:i, "", class: "graduation-cap") + " Issue Certificates" + h.content_tag(:i, "", class: "chevron-right"), "#", class: "btn btn-success btn-xs m-l-5px clients-issue-certs-modal-link", data: toggle: "modal", target: "#choose-course-modal0", "client-id" => client.id)
【讨论】:
感谢@arieljuod,该代码似乎显示了正确的链接,但现在,如果不使用 AJAX 数据表打开,模式本身似乎。我将尝试研究为什么会这样。如果您有任何建议,请告诉我。 我知道您在 AJAX 请求后显示此图标,并且模式是由引导程序之类的东西处理的,对吗?如果是这样,您可能需要在使用新内容更新 DOM 后触发与 modals 相关的引导 JS 再次感谢@arieljuod -- 缺少一个初始化器来让 JS 加载以上是关于Rails:AJAX Datatables 按钮打开 Modal的主要内容,如果未能解决你的问题,请参考以下文章
jquery-datatables-rails。响应式扩展和移动视图
为啥我使用 Datatables 的 Rails 应用程序在我使用后退按钮时无法正确绘制表格,但在我刷新页面时却如此?
单击按钮时,如何触发 jquery datatables fnServerData 通过 AJAX 更新表?