gpt4 book ai didi

javascript - Rails 重复确认对话框

转载 作者:行者123 更新时间:2023-11-29 19:35:14 25 4
gpt4 key购买 nike

我有一个 Rails 应用程序,不幸的是,我的确认对话框没有按预期工作。这是模板片段:

<%= button_to user_path, data: {confirm: 'Are you sure?'}, method: :delete, class: 'btn btn-danger' do %>
<%= fa_icon 'trash-o', text: 'Delete' %>
<% end %>

生成的 HTML 如下所示:

<form class="button_to" method="post" action="/users/name">
<div>
<input type="hidden" value="delete" name="_method">
<button class="btn btn-danger" type="submit" data-confirm="Are you sure?">
<i class="fa fa-trash-o"></i>
Delete
</button>
<input type="hidden" value="LSb8IIBGyQ+mB080WDdpEb16RYFJ26DTYbfMs8gc/F8=" name="authenticity_token">
</div>
</form>

现在,当我单击“删除”按钮时,会创建一个确认对话框。当我单击“确定”时,这会显示在日志中:

Started GET "/users/name" for 127.0.0.1 at 2014-08-21 14:53:02 +0200
Processing by UsersController#show as JS
Parameters: {"id"=>"name"}

该请求返回 HTTP 200,然后生成另一个对话框。在该对话框上单击“确定”后,没有任何反应,只是省略了该对话框,也没有发送删除请求。

由于已经有几个类似的问题,这里是我尝试过的:

  1. 寻找多个 javascript_include_tags。事实并非如此。
  2. 寻找多个包含的 javascript 代码。不是这样的,我的application.js里面只有jquery和jquery_ujs。
  3. 关闭涡轮链接。这没有帮助。
  4. 使用其他浏览器(试用过 Chrome 36.0.1985.143 和 Firefox 31.0)

此处的 UsersController 代码: https://gist.github.com/sonOfRa/3f7638e321a22f243ce9

最佳答案

您生成的 html 不包含 data-method = delete。你的 html 应该是

<button class="btn btn-danger" type="submit" data-confirm="Are you sure?" data-method="delete">
<i class="fa fa-trash-o"></i>
Delete

尝试在您的代码中使用以下内容:

<%= button_to user_path, method: :delete, data: {confirm: 'Are you sure?'}, class: 'btn btn-danger' do %>
<%= fa_icon 'trash-o', text: 'Delete' %>
<% end %>

这里第二个参数应该是方法类型。希望这会有所帮助。

关于javascript - Rails 重复确认对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25427582/

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