【问题标题】:Destroy confirmation popup with input使用输入销毁确认弹出窗口
【发布时间】:2018-12-03 23:15:54
【问题描述】:

有什么简单的方法可以传参销毁确认按钮吗?

我不想只显示“你确定吗?”带有确定/取消按钮的消息。我想传递一些参数,这些参数将保存为已删除对象的注释。

我想得到类似图片的结果:

【问题讨论】:

  • 您的意思是显示自定义销毁弹出消息吗?点击销毁按钮?
  • @Gabbar 是的,这就是我想做的。此消息应包含输入
  • @JanKrupa 您可以使用表单实现引导模式弹出窗口,也可以在其上设置验证并根据您的要求进行设计。任何接受输入的弹出窗口都会被调用,form ;) 示例:jsfiddle.net/KyleMit/0fscmf3L
  • 这看起来像一个普通的 html 表单。
  • @JanKrupa 如果对您有帮助,请随时接受/投票。

标签: ruby-on-rails ruby acts-as-audited


【解决方案1】:

1 => 假设你有一个删除对象的链接

<%= link_to 'Delete', 'javascript:;',id: "#{obj.id}", class: 'delete_object_by_audit_cmt'%>

2 => 点击删除链接打开带有注释字段的模型。并传递将被删除的对象的 id。

<script>
  $('.delete_object_by_audit_cmt').on('click', function{
    var id_of_obj = $(this).attr('id');
    $('#deleted_obj_val').val(id_of_obj); // set hidden field id value
    $('#modal_id').show();
  });
</script>

3 => 使用表单字段创建模型(仅观看步骤,您应该将其包装到带有模态 ID 的引导模态)

<div id="modal">
  <p>Are you sure want to delete ... your custom message</p>
  <%= form_tag delete_object_path%>
    <%=text_field_tag :audit_comment%>
    <%= hidden_field_tag :id, "", id: 'deleted_obj_val'%>
    <%= submit_tag :"Yes delete"%>
    <%= link_to 'Cancel', cancel_path%>
  <%end%>
</div>

总结:- 1)在删除链接上点击打开一个模式

2) 将该模态的 id 的隐藏字段值设置为已删除的对象值。

3) 点击是删除它会提交审计消息以及对象的 id,你可以在控制器端处理它。

【讨论】:

  • 我真的不知道该怎么做。我必须深入研究javascript。我想做的是为所有类定义一个全局函数,它将定义这个弹出窗口(所以我只是将一个实例传递给这个函数,就是这样)。但我从未使用过 javascript,所以这需要一些时间。
  • @jan krupa 我确实做到了。您可以查看脚本代码,这意味着我已经为所有删除链接定义了一个通用类,其中包含将被删除的对象值的动态 id。所以在这里通过单击删除链接,将使用公共类触发单击事件,并且使用该公共类,将使用 $(this) 获得对象的 id 值。字段值将使用存储在 id_of_obj 中的对象的 Id 设置,该对象将被删除。很快 。我希望你很清楚。让我知道以获得进一步的指导。
  • 我真的不知道应该在哪里定义 divscript 以便可以从任何地方调用它。
  • 嗯,它有效,但我必须添加一些“变通办法”,所以现在看起来一团糟。
  • @jan 很高兴知道这一点。
猜你喜欢
  • 1970-01-01
  • 2012-03-04
  • 1970-01-01
  • 2012-09-10
  • 1970-01-01
  • 2018-05-23
  • 2017-03-09
  • 2011-03-24
  • 2011-10-19
相关资源
最近更新 更多